<Global #global也可不要,后面如设置多个虚拟站点清晰
IdentLookups off #连接快些 还有后面的 UseReverseDNS
RequireValidShell off #匿名的一般需要加上这个
MaxLoginAttempts 1 #匿名的话1就可以了,最大密码验证次数
WtmpLog NONE #不记log到wtmp
DenyFilter \*.*/|.ftpaccess #DenyFilter做一些过滤,正则表达式
#DenyFilter ~!`\**/?,$@ # 根据自己需要写吧,上面的好烂:P
#LsDefaultOptions "-l" #ls参数
#AllowForeignAddress on #要允许 FXP 写成 on
CommandBufferSize 128 #最大命令长度
DirFakeUser On FTP #不显示给用户真实的用户、组
DirFakeGroup On FTP
DeferWelcome on #显示欢迎信息
PathDenyFilter "(^\.ftpaccess$)" #同DenyFilter 过滤用
User nobody #proftpd 以哪个用户、组的身份运行
Group nobody
TimesGMT off #时间
<Limit LOGIN DELE RMD XRMD SITE RNFR RNTO WRITE
DenyAll
</Limit #出于某些考虑,开始禁掉,后面需要再打开。READ也可加过来...
#也可以这里设置允许连接的网段 Login,或者后面,建议用防火墙
<Limit ALL
IgnoreHidden on
</Limit
<Directory /*
HideNoAccess on
AllowOverwrite off #禁止重写覆盖,后面打开允许续传
</Directory #AllowRetrieveRestart默认是on 也可以写进来
</Global
ServerName "FTP server"
ServerType standalone #运行方式 还可以用 inetd xinetd
ServerIdent on "Welcome to FTP" #身份验证前显示给用户的,也可用文件,这里略
DefaultServer on
UseReverseDNS off #加快连接速度
Port 21 #FTP端口
Umask 022 #掩码 为了便于管理 用 002
PassivePorts 20000 30000 #被动模式端口段
SystemLog /var/proftpd/syslog #log 注意自己加上 logrotate 配置
MaxInstances 250 #最大
TimeoutLogin 30 #身份验证超时
TimeoutIdle 120 #发呆超时
TimeoutNoTransfer 300 #无数据传输超时
#TimeoutStalled 300
#log一些自定义格式,根据需要调整或者用默认
LogFormat myxfer "%h %u %t \"%r\" %s %b"
LogFormat default "%h %a %u %t \"%r\" %s %b $$ \'%F\'"
LogFormat auth "%h %a %t \"%r\" %s"
LogFormat write "%h %a %t \"%r\" %s %b"
#匿名的根目录 记得设置相应目录权限,ftp 用户应至少有 r x 权限
<Anonymous /home/ftp
User ftp
Group ftpadmin
Umask 002
UserAlias anonymous ftp
MaxClients 50 "客满(%m)" #人多时的提示信息,可以用一些变量
#RateReadBPS 500000 #限速用
MaxClientsPerHost 2 "连接数多" #一个IP的连接数
TransferLog NONE #log
ExtendedLog /var/proftpd/upload.log write myxfer #log
ExtendedLog /var/proftpd/download.log read myxfer #log
DisplayLogin etc/welcome #欢迎文件,可以用一些变量
DisplayFirstChdir .message #改变目录时显示的消息
AuthAliasOnly on #只允许 UserAlias 过的 这里只允许 anonymous 不允许ftp
<Limit LOGIN
AllowAll
</Limit #打开允许连接,可以这是允许访问的网段,建议防火墙
<Directory incoming
AllowStoreRestart on #允许上传目录,可以续传,不能覆盖
<Limit WRITE
AllowAll
</Limit #如果不想让下载,只让上载 可以加上
#<Limit READDenyAll</Limit
</Directory #到这差不多就完了,每个目录可以写 .ftpaccess 设置权限
#后面这两个可以参考根据需要
#在FTP根目录又不让看的,上面把欢迎信息放里面了,当然可以放别的
<Directory etc
<Limit READ WRITE DIRS
DenyAll
</Limit
</Directory
<Directory Tsinghua #限制特定IP段能看的,也可在目录的.ftpaccess里面设置
<Limit ALL
Order deny,allow
Allow from 166.111.
</Limit
</Directory
</Anonymous #到这匿名的就完了
#加帐号密码可以用多种方式,密码文件,数据库等
#如果用系统的帐号,可以用 DefaultRoot 限制活动目录,比如把TA堵在家里 ~
#还有别的很多 根据需要自己看文档吧 比如打开MultilineRFC2228等
#
#记得设置相应目录权限,r x 一个都不能少
#记得设置文件权限(chmod/chown) 配置 .ftpaccess
#应该了解 ls rm chmod chown find xargs crontab 等命令以便进行简单管理
#kill/killall -HUP 或者用脚本 ftpshut ftpwho
#rm -f /etc/shutmsg
#相应的辅助工具还有很多,也可以自己写脚本