一键脚本——pure-ftpd的安装和配置

作者:csuper 发表于:2016-03-13

 

安装与配置        

一键脚本——pure-ftpd的安装和配置

       为了今后安装配置方便,特意写了一个shell脚本,具体内容如下。

#!/bin/sh#description: installing pure-ftpd-1.0.36 package#             and setting some items of configure file#author: i@xuzeshui.com#date: 2014-04-23#cd /usr/local/src
wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.36.tar.gz
tar -xvf pure-ftpd-1.0.36.tar.gz
cd pure-ftpd-1.0.36./configure --prefix=/usr/local/pure-ftpd-1.0.36 --with-virtualchroot  --with-everything --with-puredb
make 
make install
mkdir -p /usr/local/pure-ftpd-1.0.36/etc/cp ./configuration-file/pure-ftpd.conf /usr/local/pure-ftpd-1.0.36/etc/cp ./configuration-file/pure-config.pl /usr/local/pure-ftpd-1.0.36/bin/chmod a+x /usr/local/pure-ftpd-1.0.36/bin/pure-config.pl

cd /usr/local/ln -s pure-ftpd-1.0.36 pure-ftpd/usr/local/pure-ftpd-1.0.36/bin/pure-config.pl /usr/local/pure-ftpd-1.0.36/etc/pure-ftpd.conf
echo "/usr/local/pure-ftpd-1.0.36/bin/pure-config.pl /usr/local/pure-ftpd-1.0.36/etc/pure-ftpd.conf" >> /etc/rc.d/rc.localsed -i 's#MinUID                      100#MinUID                      98#g' /usr/local/pure-ftpd-1.0.36/etc/pure-ftpd.conf
sed -i 's/MaxClientsNumber            50/MaxClientsNumber            1000/g' /usr/local/pure-ftpd-1.0.36/etc/pure-ftpd.conf
sed -i 's/# TrustedGID                    100/TrustedGID                    99/g' /usr/local/pure-ftpd-1.0.36/etc/pure-ftpd.conf
sed -i 's/MaxClientsPerIP             8/MaxClientsPerIP             200/g'  /usr/local/pure-ftpd-1.0.36/etc/pure-ftpd.conf
sed -i 's/AllowUserFXP                no/AllowUserFXP                yes/g'  /usr/local/pure-ftpd-1.0.36/etc/pure-ftpd.conf
sed -i 's/MaxDiskUsage               99/MaxDiskUsage               97/g'  /usr/local/pure-ftpd-1.0.36/etc/pure-ftpd.conf
sed -i 's/# PassivePortRange          30000 50000/PassivePortRange          30000 50000/g'  /usr/local/pure-ftpd-1.0.36/etc/pure-ftpd.conf
sed -ir '/\/etc\/pureftpd.pdb/a\PureDB                        /usr/local/pure-ftpd/etc/pureftpd.pdb' /usr/local/pure-ftpd-1.0.36/etc/pure-ftpd.conf

几点说明

 

       1、由于是开启虚拟用户(即用户是只登陆ftp,与系统用户分开),所以编译的时候加上参数 –with-puredb,否则创建用户后登陆分发现”530 Login authentication failed” 错误。该错误的原因主要是虚拟用户使用了 /usr/local/pure-ftpd/etc/pureftpd.pdb 文件,该文件路径在pure-ftpd.conf中有。

       2、PassivePortRange指定了被动连接的端口范围,同样需要跟21端口一样,开启防火墙通过。

       3、由于后面ftp用户创建使用nobody:nobody,该系统角色ID为99,所以调整MinUID,让99允许,当然也可以自己新创一个用户名和组。

 使用ftp 

       安装后创建用户,比如创建blog这个用户登陆ftp,则进入安装目录的bin下使用 pure-pwd这个工具,具体参数可以看帮助。

 

./pure-pw useradd blog -u99 -g99 -d /data/vhosts/blog.xuzeshui.com

       上述命令创建了一个ftp用户名为blog,-u -g分别设置用户的归属,由于配置的时候配置到nobody:nobody,所以为99, -d为用户所在的主目录,同时注意该目录也要有有权限。

       更改配置和修改用户后,请一定使用 pure-pw mkdb 提交更改,否则是不会生效的

版权声明

本文仅代表作者观点,不代表Csuper立场。
本文系作者授权百度百家发表,未经许可,不得转载。