官方下到的pure-ftpd需要在本机编译后才能使用,所以需要安装GCC和G++环境,GCC环境需要的rpm包全都在光盘镜像的Packages目录下
安装顺序如下:(包的名称固定,但版本号可能因redhat版本不同而有区别,同时需用root权限,su或者在每条命令前加sudo)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm rpm -ivh cpp-4.4.7-4.el6.x86_64.rpm rpm -ivh kernel-headers-2.6.32-431.el6.x86_64.rpm rpm -ivh glibc-headers-2.12-1.132.el6.x86_64.rpm rpm -ivh glibc-devel-2.12-1.132.el6.x86_64.rpm - rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm rpm -ivh libstdc++-devel-4.4.7-4.el6.x86_64.rpm rpm -ivh gcc-c++-4.4.7-4.el6.x86_64.rpm |
安装完之后打个命令验证一下
1 |
gcc –v |
最后一行显示
1 |
gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) |
表明成功
到这里 编译环境已经完全搭建好了
然后去pure-ftpd官网下载所需的版本
https://download.pureftpd.org/pub/pure-ftpd/releases/
我这里以1.0.47为例,下载pure-ftpd-1.0.47.tar.gz
首先解压
若环境没有装tar,则需要在Packages目录下安装tar
1 |
rpm -ivh tar-1.23-13.el6.x86_64.rpm |
解压:
1 |
tar –xf tar-1.23-13.el6.x86_64.rpm |
以下命令需全部使用root权限运行
进入解压到的目录后配置编译文件
1 |
./configure --prefix=/usr/local/pureftpd/ --with-language=simplified-chinese --with-everything |
运行编译命令
1 |
make && make check && make install |
然后配置登录用户的信息,安全起见不使用系统用户进行登录,而使用PureDB进行登录
添加用户组
1 |
groupadd ftpuser |
添加新用户
1 |
/usr/local/pureftpd/bin/pure-pw ftpuser –u 用户名 –g pureftpd –d 目录 –f /usr/local/pureftpd/etc/pureftpd.passwd |
生成新的数据库文件
1 |
/usr/local/pureftpd/bin/pure-pw mkdb |
修改配置文件
1 |
vi /usr/local/pure-ftpd/etc/pure-ftpd.conf |
找到 PureDB 字段的一行 把前面的#去掉,后面的路径改为/usr/local/pureftpd/etc/pureftpd.pdb
有两种启动方式
一种是使用pure-config.pl的启动方式(不知道为啥我在新版里没找到这个文件,直接从旧版考过来了)
1 |
/usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf |
或者用命令的方式直接启动
1 |
/usr/local/pureftpd/sbin/pure-ftpd -j -lpuredb:/usr/local/pureftpd/etc/pureftpd.pdb & |
如果发现无法上传文件,那么需要给目录添加用户权限
1 |
chown ftpuser 目录 |
设置开机启动
1 |
vi /etc/rc.d/rc.local |
在最后一行添加启动的命令(自己选择前面写的两种启动方式之一)
如果剩下再有问题,需修改防火墙配置或直接关闭防火墙