Ubuntu下pure-ftpd的安装

来源:互联网 发布:淘宝私人定制如何关闭 编辑:程序博客网 时间:2024/05/02 16:49

  Linux下的ftpd很多,Ubuntu下常用vsftpd, proftpd和pure-ftpd,热能系当初使用的就是proftpd. 不过前两者有个致命的问题就是内码转换,它们默认使用UTF-8编码,而Windows系统使用GBK,这就导致Windows访问时中文出现乱码。pure-ftpd则可以设置客户端默认编码,直接设为GBK就解决问题了。pure-ftpd的虚拟用户支持也很好,允许限制带宽、空间配额,可以用自带的pure-pw管理虚拟用户,也可以用MySQL和LDAP. pure-ftpd也提供FXP协议和SSL/TLS支持,是一个很全面的ftpd. 首先安装pure-ftpd:


sudo apt-get install pure-ftpd

  pure-ftpd不是用配置文件而是用命令行参数,这种方式比较怪异。不过pure-ftpd的作者还是为偏好配置文件的用户提供了wrapper,可以man一下pure-ftpd-wrapper. 在Debian/Ubuntu下的wrapper比较怪,是在/etc/pure-ftpd/conf下以设置项作为文件名,该项的设置值作为文件的内容,如需要设置ClientCharset=gbk,就建立一个名为“ClientCharset”的文件,内容为“GBK”.
  实验室的FTP需要给每个人配一个私有账号,相当于一个网络硬盘;同时允许匿名登录用于上传公共资料与数据交换。由于是内部服务器,需要改一下端口号,最后还需要一个管理员帐号。我使用的设置如下(用传统赋值写法),一些不常用的就不写了:


ClientCharset=gbk #必设,防止Windows登录出现中文乱码
DontResolve=yes #不解析域名,可以节省登录时间

BrokenClientsCompatibility=yes #兼容IE等非标准FTP client
ChrootEveryone=yes #把所有用户限制在其homedir下
KeepAllFiles=yes #禁止用户删除文件,TrustedGID组中的除外
TrustedGID=1001 #管理员组ftpadmins的GID,允许管理员删除文件
CreateHomeDir=yes #当虚拟用户第一次登录时,自动创建homedir
MaxClientsPerIP=2 #每个IP限制2个连接
MaxClientsNumber=20 #最大并发连接数,默认值是50
MaxDiskUsage=90 #分区已使用空间超过90%时不再接受上传
NoAnonymous=no #允许匿名登录
Bind=,8821 #改变端口号

  每次修改服务器设置后都需要重新启动服务:

sudo /etc/init.d/pure-ftpd restart

 

注:我是先安装的ftpd,但是出现从windows下访问显示目录乱码,于是重新安装pure-ftd,现按照上面修改ClientCharset,重启就可以了。

 

参考:http://neolimeng.javaeye.com/blog/533990