试了一圈 vsftpd,proftpd 等等,都觉得太麻烦了。特别是和系统用户关系太紧密了。按我自己的需求,如果一个ftp用户非要和shell帐户关系整的那么密切的话,还不如直接用sftp(ftp over ssl)算了。当然,主要是因为配置也不简单。
最终试了pureftpd觉得,不错,正是我想要的。可以直接他他在即的puredb里添加用户,这是虚拟用户(相对于linux系统来说),和系统用户一点亲戚都没有。配置在几个ftp里也算简单。下面把安装过程简单记录一下,以备需要的朋友和自己以后查阅!
1. 到pureftpd的官方网站 www.pureftpd.org/ 下载最新版本的pureftpd。
2. configure,参数很多,参考相关文档,我不复制了。也可以不看,直接./configure with-everything。如果不选定所有的话,其中有一个参数–with-puredb 是支持虚拟用户要用的,别落下。 make;make install;
3. 创建虚拟用户passwd文件 ./pure-pw useradd yourname -u ftp -d /home/youpath -f /xxx/pureftp.passwd
会提示你输入密码
4. 根据passwd文件生成pureftpd的puredb用户文件 ./pure-pw mkdb /xxx/www.iu1u.com/pureftp.pdb -f /xxx/www.iu1u.com/pureftp.passwd 这个文件一会儿要制定到conf文件中
5. 到puredb安装文件目录下
#chmod 755 configuration-file/pure-config.pl
#cp configuration-file/pure-config.pl /usr/local/sbin/
#cp configuration-file/pure-ftpd.conf /usr/local/etc/
6. 修改pure-ftpd.conf文件,打开并确认pdb配置路径
PureDB /ftp/etc/pureftpd.pdb
7. 到puredb安装文件目录下,cp contrib/redhat.init /etc/init.d/pure-ftpd,然后进到目标目录,
chmod 755 pure-ftpd;
chkconfig –add pure-ftpd;
确认pure-ftpd里的路径是不是和自己安装的一致。
8. ./pure-ftpd start 开动ftp即可,默认dameon 方式执行,不用操心了。打开ftp,试一下刚才自己用./pure-pw useradd 配置的用户名是否能登录和操作正常。