Centos PureFTPd+PureDB 编译安装配置

admin2012-07-15linux64
http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.36.tar.gz tar xzvf pure-ftpd-1.0.36.tar.gz cd pure-ftpd-1.0.36
./configure --prefix=/usr/local/pureftpd --with-quotas --with-cookie --with-virtualhosts --with-virtualchroot --with-diraliases --with-sysquotas --with-ratios --with-altlog --with-paranoidmsg --with-welcomemsg --with-throttling --with-uploadscript --with-language=simplified-chinese --with-ftpwho --with-peruserlimits --with-puredb
编译说明 --with-puredb 虚拟用户认证 --with-cookie 在用户登录时显示标志或banner --with-virtualhosts 多IP服务器可做为多个虚拟的ftp服务器 --with-diraliases 支持目录别名 --with-sysquotas 支持系统配额 --with-quotas 用户配额(文件数和总大小) --with-ratios 上传下载比例 --with-altlog 日志输出,对于主站,量太大,可以不用 --with-paranoidmsg 友好的错误信息 --with-peruserlimits 单用户连接数限制 --with-welcomemsg 欢迎消息 --with-throttling 支持带宽限制 --with-uploadscript 支持自动上传脚本 --with-virtualchroot 限制用户不能到家目录外(符号链接除外) --with-ftpwho 支持pure-ftpwho命令,启用这个功能需要更多的额外内存 --with-language=simplified-chinese 中文语言支持  
 make 
 make install
 cp configuration-file/pure-config.pl /usr/local/pureftpd/sbin/
 chmod 755 /usr/local/pureftpd/sbin/pure-config.pl
 mkdir /usr/local/pureftpd/etc/
 cp configuration-file/pure-ftpd.conf /usr/local/pureftpd/etc/
# vi /usr/local/pureftpd/etc/pure-ftpd.conf
# 开启FTP文件覆盖
AllowOverwrite on
AllowStoreRestart on
# 关闭匿名登录
NoAnonymous yes
# PureDB验证
PureDB /usr/local/pureftpd/etc/pureftpd.pdb
加入系统服务
 cp contrib/redhat.init /etc/init.d/pureftpd
 sed -i 's#/usr/local/sbin/#/usr/local/pureftpd/sbin/#g' /etc/init.d/pureftpd
 sed -i 's#/etc/pure-ftpd.conf#/usr/local/pureftpd/etc/pure-ftpd.conf#g' /etc/init.d/pureftpd
 chmod 755 /etc/init.d/pureftpd
 chkconfig --add pureftpd
 chkconfig --level 2345 pureftpd on
建立虚拟用户 # /usr/local/pureftpd/bin/pure-pw useradd ftpuser -u apache -g apache -d /var/www/html -m 并配置密码 参数说明 -t 下载带宽限制 -T 上传带宽限制 -n 最大文件数目 -N 磁盘配额(单位M) -q 上传速度限制 -Q 下载速度限制 -r 允许某些ip/网段的客户端访问 -R 拒绝某些ip/网段的客户端访问 -i 允许本地某些ip/网段访问(allow local host) -I 拒绝本地某些ip/网段访问(deny local host) -y 同时最大连接数目 -z 允许连接服务器的时间段,格式hhmm-hhmm,如 -z 0412-1618代表用户只能在凌晨4点12分至下午4点18分连接服务器 -f passwd_file -F puredb_file -m 不必重启Pure-FTPd以及重新生成puredb_file文件 如果进行帐户操作时,没有带-m 参数,那就应该手动更新一下pdb数据 /usr/local/pure-ftpd/bin/pure-pw mkdb pureftpd.pdb pure-pw useradd 添加用户 pure-pw userdel 删除用户 pure-pw usermod 修改用户 pure-pw show 查看用户详细信息 pure-pw list 查看所有用户设置 pure-pw mkdb 生成数据文件 pure-ftpd.conf配置文件解释 ============================================================================ ChrootEveryone yes                      #限制所有用户在其主目录中 BrokenClientsCompatibility no #兼容ie等比较非正规化的ftp客户端 MaxClientsNumber 50                 #服务器总共允许同时连接的最大用户数 Daemonize yes                                 #做为守护(doemon)进程运行(Fork in background) MaxClientsPerIP 8                         #同一IP允许同时连接的用户数 VerboseLog no                                #如果你要记录所有的客户命令,设置这个指令为 "yes" DisplayDotFiles yes                       #即使客户端没有发送 '-a' 选项也列出隐藏文件 AnonymousOnly no                      #不允许认证用户 - 仅作为一个公共的匿名FTP。 NoAnonymous yes                        #不允许匿名连接,仅允许认证用户使用。 SyslogFacility ftp                           #缺省的功能( facility )是 "ftp","none" 将禁止日志。 DontResolve yes                            #在日志文件中不解析主机名。 MaxIdleTime 15                            #客户端允许的最大的空闲时间(分钟,缺省15分钟) PureDB /usr/local/pureftp/etc/pureftpd.pdb #PureDB用户数据库 LimitRecursion 2000 8             #'ls' 命令的递归限制。第一个参数给出文件显示的最大数目。第二个参数给出最大的子目录深度. AnonymousCanCreateDirs no #允许匿名用户创建新目录? MaxLoad 4                                       #如果系统被 loaded 超过下面的值,匿名用户会被禁止下载。 AntiWarez yes                                #不接受所有者为 "ftp" 的文件的下载。 Bind 10.10.10.10,21                   #服务监听的IP 地址和端口。 Umask 133:022                             #新建目录及文件的属性掩码值。<文件掩码>;:<目录掩码>; . MinUID 500                                   #认证用户允许登陆的最小组ID(UID) 。 AllowUserFXP yes                       #仅允许认证用户进行 FXP 传输。 AllowAnonymousFXP no         #对匿名用户和非匿名用户允许进行匿名 FXP 传输。 ProhibitDotFilesWrite no         #用户不能删除和写点文件(文件名以 '.' 开头的文件) ProhibitDotFilesRead no          #禁止读点文件(文件名以 '.' 开头的文件) (.history, .ssh...) AutoRename no                           #永不覆盖文件。当上传的文件,其文件名已经存在时,自动重命名,如: file.1, file.2, file.3, ... AnonymousCantUpload no    #不接受匿名用户上传新文件( no = 允许上传) AltLog clf                                        #使用类似于Apache的格式创建一个额外的日志文件 MaxDiskUsage 99                       #来保护日志文件。当所在磁盘分区使用超过百分之 X 时,将不在接受新的上传。 CustomerProof yes UnixAuthentication no           #不起用简单的 Unix系统 认证方式(/etc/passwd)。 如果apache的用户id小于500,就需要修改配置文件,否则登录就会出现530错误