# This is a basic ProFTPD configuration file (rename it to
# ‘proftpd.conf’ for actual use.  It establishes a single server
# and a single anonymous login.  It assumes that you have a user/group
# “nobody” and “ftp” for normal operation and anon.

ServerName   “XXX.COM”
ServerType   standalone
DefaultServer   on

DisplayLogin /www/bin/proftp/etc/msg.txt   #欢迎词文件
WtmpLog off

ServerIdent off
TimesGMT off
RequireValidShell   off    #设置如果shell为空时允许用户登录

MaxLoginAttempts 3
TimeoutIdle   120      #– 设置空闲连接超时时钟
TimeoutLogin   120      #– 设置空闲登陆超时时钟
TimeoutNoTransfer  120      # — 设置当没有数据传输时的超时时钟
TimeoutStalled  30         #– 设置被阻塞的下载的超时时钟

MaxClients 300      #最多允许300个用户在线
MaxClientsPerHost 1  “    对不起,一个IP同一时间只允许一个连接”
MaxHostsPerUser 1 “    对不起,每个帐户最多允许来源ip为1个”
MaxClientsPerUser 1 “    对不起,每个帐户在每个客户端最多可以同时登陆1次”

#允许断点续传(上传),断点续续(下载)是默认支持的,不用设置
AllowStoreRestart on

SQLAuthTypes Backend Plaintext
#Backend表示用户认证方式为MySQL数据库的认证方式
#Plaintext表示明文认证方式,排在最前面的为最先使用的方式
SQLAuthenticate users* groups*

# databasename@host database_user user_password
SQLConnectInfo proftpd@localhost proftp_user proftp_pwd
SQLUserInfo ftpuser userid passwd uid gid homedir shell
SQLGroupInfo ftpgroup groupname gid members
#如果用户主目录不存在,则系统会根据此用户在用户数据表中的homedir字段的值新建一个目录
SQLHomedirOnDemand off
# Update count every time user logs in
SQLLog PASS updatecount
SQLNamedQuery updatecount UPDATE “count=count+1,accessed=now() WHERE userid=’%u'” ftpuser

# Update modified everytime user uploads or deletes a file
SQLLog STOR,DELE modified
SQLNamedQuery modified UPDATE “modified=now() WHERE userid=’%u'” ftpuser

# Port 21 is the standard FTP port.
Port    21

# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask    022

# To prevent DoS attacks, set the maximum number of child processes
# to 30.  If you need to allow more than 30 concurrent connections
# at once, simply increase this value.  Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd).
MaxInstances   300

# Set the user and group under which the server will run.
User    nobody
Group    nobody

# To cause every FTP user to be “jailed” (chrooted) into their home
# directory, uncomment this line.
#DefaultRoot ~ ftpusers
DefaultRoot ~

# Normally, we want files to be overwriteable.
<DIRECTORY />
  AllowOverwrite  off
</DIRECTORY>
<LIMIT READ RETR>#允许下载
AllowAll
</LIMIT>

<LIMIT CMD MKD RNFR DELE RMD STOR WRITE DIRS>#不允许其它权限 
DenyAll
</LIMIT>

发表评论