pure-ftpd 安装(利用PureDB加密密码)

  之前用vsftpd做虚拟用户,线上登陆用户多了,密码是明文存储的不太安全。网上大多数pureftp的文章都是结合mysql来安装的,还要装lamp环境太繁琐了。所以经过研究不用存储在mysql里面密码也是可以加密的。见下文详细安装:

cd /opt;wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.36.tar.gz

 
解压缩包并安装
tar zxvf pure-ftpd-1.0.36.tar.gz
cd pure-ftpd-1.0.36
./configure --prefix=/usr/local/pureftpd/ --with-puredb
make
make install
 
配置
mkdir -p /usr/local/pureftpd/etc   【创建配置文件的存放目录】
cd configuration-file/
cp pure-ftpd.conf /usr/local/pureftpd/etc/   【创建主配置文档】
chmod 755 pure-config.pl  【赋予执行权限】
cp pure-config.pl /usr/local/pureftpd/sbin/  【启动服务时调用的文件】
cd ../contrib/
cp redhat.init /etc/init.d/pureftpd【创建启动脚本】
chmod 755 /etc/init.d/pureftpd 【赋予执行权限】
vim /etc/init.d/pureftpd  【修改几处绝对路径】
18行修改为:fullpath=/usr/local/pureftpd/sbin/$prog
19行修改为:pureftpwho=/usr/local/pureftpd/sbin/pure-ftpwho
24行修改为:/usr/local/pureftpd/etc/pure-ftpd.conf --daemonize
(以上修改的位置实际上是编译的时候prefix=的位置)
 
 
mkdir /ftproot
chmod -R 777 /ftproot
useradd virtualftp -d /ftproot -s /sbin/nologin -M   【创建虚拟用户映射的系统账户】
chown virtualftp:virtualftp /ftproot  【将虚拟账号的根目录文件夹/ftproot的组与用户设置为virtualftp组和virtualftp用户】
 
 
创建ftp用户:
/usr/local/pureftpd/bin/pure-pw useradd virtualftp -f /usr/local/pureftpd/etc/pureftpd.passwd -u 500 -g 500 -d /ftproot
(500是/etc/passwd里面的uid和gid)
cat /usr/local/pureftpd/etc/pureftpd.passwd  密码是加密的
(如果创建的user不是/etc/passwd已经存在的话,把ftp所在目录给777权限才能上传文件)
 
修改用户密码:
/usr/local/pureftpd/bin/pure-pw passwd virtualftp -f /usr/local/pureftpd/etc/pureftpd.passwd -m
 
 
刷新数据库使添加的用户生效:(注意每次添加删除账号都要刷新一次)
/usr/local/pureftpd/bin/pure-pw mkdb /usr/local/pureftpd/etc/pureftpd.pdb -f /usr/local/pureftpd/etc/pureftpd.passwd
 
 
修改配置文件
vim /usr/local/pureftpd/etc/pure-ftpd.conf
20行:ChrootEveryone yes  每个用户进入都会呆在自己的目录中
40行:MaxClientsNumber 50 同时在线最大的用户数量
71行:AnonymousOnly no    仅仅允许匿名
77行:NoAnonymous yes     不允许匿名
104行:MaxIdleTime   客户端允许的最大的空闲时间(分钟,缺省15分钟)
126行:PureDB /usr/local/pureftpd/etc/pureftpd.pdb  (这里没有用mysql存储所以要修改下)
246行:AllowUserFXP yes   仅允许认证用户进行 FXP 传输
279行:AnonymousCantUpload yes   不接受匿名用户上传新文件( no = 允许上传)
336行:CreateHomeDir yes   用户主目录不存在的话,自动创建。
 
 
chkconfig --add pureftpd 【将pureftpd服务加入系统管理】
chkconfig pureftpd on    【将pureftpd设置为开机自启动】
service pureftpd start   【启动服务】
 

本文出自 “技术成就梦想” 博客,请务必保留此出处http://hxl2009.blog.51cto.com/779549/1009153

你可能感兴趣的:(ftp,pureftp,ftp虚拟用户)