updated on Mon Jan 23 20:11:11 UTC 2012
[aur-mirror.git] / wzdftpd / wzd.cfg.sample
blob466f35fdaea37dd21813d419d6bbbffc1b13c481
1 [GLOBAL]
2 # This is the main config file
3 # lines begining with a # are ignored, as empty lines
4 # all lines must be of the form:
5 # <name> = <value>
6 # (for windows users: without the < > ;-)
7 # Zeroconf settings
8 # Change zeroconf_name to whatever you want your ftp server name to be
9 # Change zeroconf_port to the port this is broadcasted on 
10 # The default should be fine
11 zeroconf_name = Test_Server 
12 zeroconf_port = 6969
13 # dynamic ip (default: 0)
14 # if you specify 1 here, the server will try to use your system to detect
15 # ip changes
16 # 0 desactivates checks
17 # if you specify a canonical name, the server will use DNS lookups
18 #dynamic_ip = xxx.myftp.org
19 #dynamic_ip = 1
21 # Listen port (default: 21)
22 # IMPORTANT: under unix, you'll need privileges to bind to a system port
23 # ( < 1024 )
24 #port = 6969
26 # PASV range (default: 1025->65536)
27 # specify this iff you want to get a specific range
28 pasv_low_range = 2500
29 pasv_high_range  = 3000
30 #pasv_ip = 62.xxx.xxx.xxx
31 #pasv_ip = 134.xxx.xx.xx
33 # unix only: server will drop privileges to a user after binding port
34 # you can specify a user login name
35 # This will only be used if run by root !
36 #server_uid = pollux
38 # unix only: file where pid of server will be stored
39 # (default: /var/run/wzdftpd.pid)
40 # this is used by init.d script
41 #pid_file = /usr/share/wzdftpd/wzdftpd.pid
43 # the name of the file in each dir that should be added to every answer
44 dir_message = .message
46 # log file for server activity
47 logfile = /usr/var/log/wzdftpd/wzd.log
49 # set to 0 if you do not want syslog (default: 1)
50 #use_syslog = 0
52 # log file for transfered files (default: do not log)
53 xferlog = /usr/var/log/wzdftpd/xferlog
55 # directory to store various log files
56 logdir = /usr/var/log/wzdftpd
58 # max number of child threads (default: 32)
59 max_threads = 32
61 # backend to use for auth (default: plaintext)
62 # you can check backend version with directives > and <
63 # e.g: backend = plaintext > 120
64 # ONE BACKEND IS NEEDED !
65 # backend name SHOULD NEVER contains spaces !
66 #backend = plaintext > 123
67 backend = /usr/share/wzdftpd/backends/libwzdplaintext.so > 124
68 #backend = /usr/share/wzdftpd/backends/libwzdmysql.so
69 #backend = /usr/share/wzdftpd/backends/libwzdpam.so
71 # speed limits in bytes /sec (approx !)
72 # 0 = no limit
73 # ex: max_dl_speed = 300000
74 max_ul_speed = 0
75 max_dl_speed = 0
77 # deny_access_files_uploaded (default: 0)
78 # if you say 1 here, users trying to download file whereas
79 # the file is being uploaded will be denied
80 deny_access_files_uploaded = 1
82 # default permissions for created dirs (default: 775)
83 # these permissions are in standard chmod() format (octal)
84 # default: 775 (user and group can upload in directory)
85 #umask = 775
87 # hide_dotted_files (default: 0)
88 # hide files beggining by a '.'
89 #hide_dotted_files = 1
91 # Log level (default: normal)
92 # Verbosity of log (only messages >= level will be displayed)
93 # can be one of (in order):
94 # lowest, flood, info, normal, high, critical
95 #loglevel = lowest
97 # TLS Options
99 # Certificate (only used in ssl mode, otherwise ignored)
100 tls_certificate = /etc/wzdftpd/wzd.pem
102 # Mode (default: explicit)
103 #  explicit: server starts in clear mode, wait for "AUTH TLS" and then switch to ssl
104 #    you can use explicit mode with normal (clear) mode
105 #  explicit_strict: server will start in clear mode, but will accept ONLY logins switched to ssl
106 #  implicit: server starts in ssl mode, no clear connection is possible
107 #tls_mode = explicit
109 # cipher list (default: ALL)
110 # you should not use this option or let "ALL" unless you know
111 # what you are doing
112 # see openssl ciphers, man openssl(1)
113 #tls_cipher_list = ALL
115 # /TLS
117 ##### CUSTOM SCRIPTS
118 # Custom scripts (or binaries) to be executed before/after certain commands
119 # order *IS* important
120 #cscript = MKDIR /bin/df
122 ##### CUSTOM SITE COMMANDS
123 # Here you can define external site commands.
124 #site_cmd = my_free ./free.sh
125 # this defines the SITE RULES command, which prints the following file
126 site_cmd = rules !/etc/wzdftpd/file_rules.txt
128 ##### SITE FILES
129 sitefile_ginfo  = /etc/wzdftpd/file_ginfo.txt
130 sitefile_group  = /etc/wzdftpd/file_group.txt
131 sitefile_groups = /etc/wzdftpd/file_groups.txt
132 sitefile_help   = /etc/wzdftpd/file_help.txt
133 sitefile_swho   = /etc/wzdftpd/file_swho.txt
134 sitefile_user   = /etc/wzdftpd/file_user.txt
135 sitefile_users  = /etc/wzdftpd/file_users.txt
136 sitefile_who    = /etc/wzdftpd/file_who.txt
137 sitefile_vfs    = /etc/wzdftpd/file_vfs.txt
139 ##### INCLUSIONS
140 # You can include other files
141 # maximum recursion is 16 (too big IMHO)
142 #include permissions.cfg
144 ##### IP RESTRICTIONS
145 [pre_ip_check]
147 # wildcards are accepted (*,?) - NOTE * stops after the first match of the next
148 #   char
150 # WARNING: to match all ip ending by 0.1 you MUST write *.*.0.1, NOT *.0.1
151 #xxx.xxx.org = allow
152 localhost = allow
153 #*.xxx.fr = allow
154 #* = deny
156 ##### PERMISSIONS
157 # you must add prefixes before permissions: -group =user +flag or *
158 # you can use negations : !*
159 # REMEMBER that the FIRST corresponding rule is applied, so order is important (never put * first !)
160 # ex: site_who = =admin -group1 +F =toto
161 # delete = -admin
162 [perms]
163 site_addip = +O +G
164 site_adduser = +O +G
165 site_backend = +O
166 site_chacl = +O
167 site_change = +O +G
168 site_changegrp = +O +G
169 site_checkperm = +O
170 site_chgrp = +O
171 site_chmod = +O
172 site_chown = +O
173 site_chpass = *
174 site_chratio = +O +G
175 site_close = +O
176 site_color = !=guest *
177 site_delip = +O +G
178 site_deluser = +O +G
179 site_flags = -admin
180 site_free = *
181 site_ginfo = +O +G
182 site_give = *
183 site_group = +O
184 site_groups = +O
185 site_grpadd = +O
186 site_grpaddip = +O
187 site_grpchange = +O
188 site_grpdel = +O
189 site_grpdelip = +O
190 site_grpkill = +O
191 site_grpratio = +O
192 site_grpren = +O
193 site_gsinfo = +O +G
194 site_help = *
195 site_idle = *
196 site_invite = !=guest *
197 site_kick = +O
198 site_kill = +O
199 site_link = +O
200 site_msg = +O
201 site_perm = +O
202 site_purge = +O +G
203 site_readd = +O +G
204 site_reload = +O
205 site_reopen = +O
206 site_rules = *
207 site_rusage = +O
208 site_savecfg = +O
209 site_sections = +O
210 site_shutdown = +O
211 site_su = +O
212 site_swho = +O
213 site_tagline = !=guest *
214 site_take = +O
215 site_unlock = +O
216 site_uptime = *
217 site_user = +O +G
218 site_users = -admin
219 site_utime = *
220 site_vars = +O
221 site_vars_group = +O
222 site_vars_user = +O
223 site_version = +O
224 site_who = !=guest *
225 site_wipe = +O
226 site_vfsls = +O
227 site_vfsadd = +O
228 site_vfsdel = +O
230 # REMOVE ME OR YOU DON'T KNOW WHAT WILL HAPPEN !
231 #site_my_free = *
232 #site_test = =pollux
234 [modules]
235 # modules are dynamic libraries
236 # order *IS* important
237 /usr/share/wzdftpd/modules/libwzd_test.so = deny
238 /usr/share/wzdftpd/modules/libwzd_sfv.so = allow
239 /usr/share/wzdftpd/modules/libwzd_tcl.so = deny
240 /usr/share/wzdftpd/modules/libwzd_perl.so = deny
241 /usr/share/wzdftpd/modules/libwzd_zeroconf.so = allow
243 [sfv]
244 progressmeter = [WzD] - %3d%% Complete - [WzD]
245 del_progressmeter = \[.*] - ...% Complete - \[WzD]
246 incomplete_indicator = ../(incomplete)-%0
247 other_completebar = [WzD] - ( %.0mM %fF - COMPLETE ) - [WzD]
249 [plaintext]
250 param = /etc/wzdftpd/users
252 [mysql]
253 #param = login:password@host:base
255 [sections]
256 # sections are used to define local server properties
257 # format: name = path path_filter
258 #   path is a regexp (man regex) to specify to specify where the section is
259 #   path_filter is a filter to restrict dir names when using mkdir
260 # the simplest section is: ALL = /* .*
261 # order *IS* important (first matching section is taken)
262 #   that means the more generic section should be the last
263 ALL = /* ^([]\[A-Za-z0-9_.'() \t+-])*$
265 [cron]
266 # cronjobs are commands to execute periodically
267 # syntax: name = minute hour day_of_month month day_of_week command
268 # the name is ignored, but must be unique
269 # each field is an integer, of *
270 # syntax is similar to *nix 'crontab' command (man 5 crontab), except
271 #  ranges are not supported (for now)
272 # command should be an absolute path (with args if needed)
273 # NOTE: if command produce output, it will be logged with level LEVEL_INFO
274 # the following command will be run the 2 of each month, at 05:00 am
275 #cron1 = 5 * 2 * * /bin/cleanup.sh
277 # order *IS* important (the name of the event is ignored)
278 [events]
279 #event1 = MKDIR /bin/df
281 # Here you can define external site commands.
282 [custom_commands]
283 #my_free = ./free.sh
284 # this defines the SITE RULES command, which prints the following file
285 site_rules = !/etc/wzdftpd/file_rules.txt
287 # first char is delimiter
288 # format is e.g name = |/home/vfsroot|/physical/path|
289 # if delimiter is |
290 # for windows you can either write
291 #    vfs = |/home/pollux/K|/cygdrive/k|
292 # or
293 #    vfs = |/home/pollux/K|k:|
294 # you can add permissions at end of line to restrict vfs for some user, group,
295 # flags or anything allowed by permissions syntax (see PERMISSIONS at end of
296 # this file for more details)
297 #   vfs = |/home/pollux/K|k:| +O =user
298 [vfs]
299 #vfs1 = |/home/pollux/vfs|/etc|
300 #vfs2 = |/home/pollux/K|/tmp|
302 # You can modify custom ftp replies here
303 # Define message like that if on one line:
304 #   <message_num> = My custom message
305 # You can also use files to include messages:
306 #   message_num = +/path/to/file
307 # I STRONGLY recommend to leave messages 227 (pasv reply), 257 (pwd) untouched
308 # most interesting messages are:
309 #  220 (banner), 230 (welcome message), 221 (logout)
310 [messages]
311 #220 = my ftp server ready