@@ -113,9 +113,69 @@ Options for `pure-ftpd.conf`] should be passed into the `config` class
113
113
parameter as a hash.
114
114
115
115
class { 'pureftpd':
116
- config => {
117
- ipv4only => 'Yes',
118
- passiveportrange => '49999:59999',
116
+ config => {
117
+ ipv4only => 'yes',
118
+ ipv6only => 'yes',
119
+ chrooteveryone => 'yes',
120
+ brokenclientscompatibility => 'no',
121
+ daemonize => 'yes',
122
+ verboselog => 'no',
123
+ displaydotfiles => 'yes',
124
+ anonymousonly => 'no',
125
+ noanonymous => 'no',
126
+ dontresolve => 'yes',
127
+ anonymouscancreatedirs => 'no',
128
+ natmode => 'no',
129
+ calluploadscript => 'yes',
130
+ antiwarez => 'yes',
131
+ allowuserfxp => 'no',
132
+ allowanonymousfxp => 'no',
133
+ prohibitdotfileswrite => 'no',
134
+ prohibitdotfilesread => 'no',
135
+ allowdotfiles => 'no',
136
+ autorename => 'no',
137
+ anonymouscantupload => 'no',
138
+ logpid => 'yes',
139
+ nochmod => 'yes',
140
+ keepallfiles => 'yes',
141
+ createhomedir => 'yes',
142
+ norename => 'yes',
143
+ customerproof => 'yes',
144
+ notruncate => 'yes',
145
+ filesystemcharset => 'big5',
146
+ clientcharset => 'big5',
147
+ syslogfacility => 'ftp',
148
+ fortunesfile => '/usr/share/fortune/zippy',
149
+ forcepassiveip => '192.168.0.1',
150
+ bind => '127.0.0.1,21',
151
+ anonymousbandwidth => '8',
152
+ userbandwidth => '8',
153
+ trustedip => '10.1.1.1',
154
+ altlog => 'w3c:/var/log/pureftpd.log',
155
+ pidfile => '/var/run/pure-ftpd.pid',
156
+ tlsciphersuite => 'HIGH:MEDIUM:+TLSv1:!SSLv2:+SSLv3',
157
+ maxidletime => '15',
158
+ maxdiskusage => '99',
159
+ trustedgid => '100',
160
+ maxclientsnumber => '50',
161
+ maxclientsperip => '8',
162
+ maxload => '4',
163
+ minuid => '100',
164
+ tls => '1',
165
+ limitrecursion => '10000 8',
166
+ passiveportrange => '30000 50000',
167
+ anonymousratio => '1 10',
168
+ userratio => '1 10',
169
+ umask => '133:022',
170
+ quota => '1000:10',
171
+ peruserlimits => '3:20',
172
+ ldapconfigfile => '/etc/pureftpd-ldap.conf',
173
+ mysqlconfigfile => '/etc/pureftpd-mysql.conf',
174
+ pgsqlconfigfile => '/etc/pureftpd-pgsql.conf',
175
+ puredb => '/etc/pureftpd.pdb',
176
+ extauth => '/var/run/ftpd.sock',
177
+ unixauthentication => 'yes',
178
+ pamauthentication => 'yes',
119
179
},
120
180
}
121
181
@@ -148,7 +208,7 @@ Options for `pureftpd-mysql.conf`] should be passed into the `config_mysql`
148
208
class parameter as a hash.
149
209
150
210
class { 'pureftpd':
151
- config_mysql => {
211
+ config_mysql => {
152
212
mysqlserver => 'localhost'
153
213
mysqlport => '3306'
154
214
mysqlsocket => '/tmp/mysql.sock'
@@ -203,6 +263,132 @@ class parameter as a hash.
203
263
204
264
### Canonical Example
205
265
266
+ class { 'pureftpd':
267
+ use_selinux => true,
268
+ config => {
269
+ ipv4only => 'yes',
270
+ ipv6only => 'yes',
271
+ chrooteveryone => 'yes',
272
+ brokenclientscompatibility => 'no',
273
+ daemonize => 'yes',
274
+ verboselog => 'no',
275
+ displaydotfiles => 'yes',
276
+ anonymousonly => 'no',
277
+ noanonymous => 'no',
278
+ dontresolve => 'yes',
279
+ anonymouscancreatedirs => 'no',
280
+ natmode => 'no',
281
+ calluploadscript => 'yes',
282
+ antiwarez => 'yes',
283
+ allowuserfxp => 'no',
284
+ allowanonymousfxp => 'no',
285
+ prohibitdotfileswrite => 'no',
286
+ prohibitdotfilesread => 'no',
287
+ allowdotfiles => 'no',
288
+ autorename => 'no',
289
+ anonymouscantupload => 'no',
290
+ logpid => 'yes',
291
+ nochmod => 'yes',
292
+ keepallfiles => 'yes',
293
+ createhomedir => 'yes',
294
+ norename => 'yes',
295
+ customerproof => 'yes',
296
+ notruncate => 'yes',
297
+ filesystemcharset => 'big5',
298
+ clientcharset => 'big5',
299
+ syslogfacility => 'ftp',
300
+ fortunesfile => '/usr/share/fortune/zippy',
301
+ forcepassiveip => '192.168.0.1',
302
+ bind => '127.0.0.1,21',
303
+ anonymousbandwidth => '8',
304
+ userbandwidth => '8',
305
+ trustedip => '10.1.1.1',
306
+ altlog => 'w3c:/var/log/pureftpd.log',
307
+ pidfile => '/var/run/pure-ftpd.pid',
308
+ tlsciphersuite => 'HIGH:MEDIUM:+TLSv1:!SSLv2:+SSLv3',
309
+ maxidletime => '15',
310
+ maxdiskusage => '99',
311
+ trustedgid => '100',
312
+ maxclientsnumber => '50',
313
+ maxclientsperip => '8',
314
+ maxload => '4',
315
+ minuid => '100',
316
+ tls => '1',
317
+ limitrecursion => '10000 8',
318
+ passiveportrange => '30000 50000',
319
+ anonymousratio => '1 10',
320
+ userratio => '1 10',
321
+ umask => '133:022',
322
+ quota => '1000:10',
323
+ peruserlimits => '3:20',
324
+ ldapconfigfile => '/etc/pureftpd-ldap.conf',
325
+ mysqlconfigfile => '/etc/pureftpd-mysql.conf',
326
+ pgsqlconfigfile => '/etc/pureftpd-pgsql.conf',
327
+ puredb => '/etc/pureftpd.pdb',
328
+ extauth => '/var/run/ftpd.sock',
329
+ unixauthentication => 'yes',
330
+ pamauthentication => 'yes',
331
+ },
332
+ config_ldap => {
333
+ ldapserver => 'ldap.example.com',
334
+ ldapauthmethod => 'PASSWORD',
335
+ ldapport => '389',
336
+ ldapbinddn => 'cn=Manager,dc=c9x,dc=org',
337
+ ldapbindpw => 'r00tPaSsw0rD',
338
+ ldapbasedn => 'cn=Users,dc=c9x,dc=org',
339
+ ldapfilter => '(&(objectClass=posixAccount)(uid=\L))',
340
+ ldaphomedir => 'homeDirectory',
341
+ ldapversion => '3',
342
+ ldapdefaultuid => '100',
343
+ ldapdefaultgid => '100',
344
+ ldapusetls => 'False',
345
+ ldapauthmethod => 'PASSWORD',
346
+ },
347
+ config_mysql => {
348
+ mysqlserver => 'localhost'
349
+ mysqlport => '3306'
350
+ mysqlsocket => '/tmp/mysql.sock'
351
+ mysqluser => 'root'
352
+ mysqlpassword => 'rootpw'
353
+ mysqldatabase => 'pureftpd'
354
+ mysqlcrypt => 'cleartext'
355
+ mysqltransactions => 'On'
356
+ mysqlgetpw => 'SELECT Password FROM users WHERE User="\L"'
357
+ mysqlgetuid => 'SELECT Uid FROM users WHERE User="\L"'
358
+ mysqldefaultuid => '1000'
359
+ mysqlgetgid => 'SELECT Gid FROM users WHERE User="\L"'
360
+ mysqldefaultgid => '1000'
361
+ mysqlgetdir => 'SELECT Dir FROM users WHERE User="\L"'
362
+ mysqlforcetildeexpansion => '0'
363
+ mysqlgetqtafs => 'SELECT QuotaFiles FROM users WHERE User="\L"'
364
+ mysqlgetqtasz => 'SELECT QuotaSize FROM users WHERE User="\L"'
365
+ mysqlgetratioul => 'SELECT ULRatio FROM users WHERE User="\L"'
366
+ mysqlgetratiodl => 'SELECT DLRatio FROM users WHERE User="\L"'
367
+ mysqlgetbandwidthul => 'SELECT ULBandwidth FROM users WHERE User="\L"'
368
+ mysqlgetbandwidthdl => 'SELECT DLBandwidth FROM users WHERE User="\L"'
369
+ },
370
+ config_pgsql => {
371
+ pgsqlserver => 'localhost',
372
+ pgsqlport => '5432',
373
+ pgsqluser => 'postgres',
374
+ pgsqlpassword => 'rootpw',
375
+ pgsqldatabase => 'pureftpd',
376
+ pgsqlcrypt => 'cleartext',
377
+ pgsqlgetpw => 'SELECT Password FROM users WHERE User=\'\L\'',
378
+ pgsqlgetuid => 'SELECT Uid FROM users WHERE User=\'\L\'',
379
+ pgsqldefaultuid => '1000',
380
+ pgsqlgetgid => 'SELECT Gid FROM users WHERE User=\'\L\'',
381
+ pgsqldefaultgid => '1000',
382
+ pgsqlgetdir => 'SELECT Dir FROM users WHERE User=\'\L\'',
383
+ pgsqlgetqtafs => 'SELECT QuotaFiles FROM users WHERE User=\'\L\'',
384
+ pgsqlgetqtasz => 'SELECT QuotaSize FROM users WHERE User=\'\L\'',
385
+ pgsqlgetratioul => 'SELECT ULRatio FROM users WHERE User=\'\L\'',
386
+ pgsqlgetratiodl => 'SELECT DLRatio FROM users WHERE User=\'\L\'',
387
+ pgsqlgetbandwidthul => 'SELECT ULBandwidth FROM users WHERE User=\'\L\'',
388
+ pgsqlgetbandwidthdl => 'SELECT DLBandwidth FROM users WHERE User=\'\L\'',
389
+ },
390
+ }
391
+
206
392
Limitations
207
393
-----------
208
394
0 commit comments