环境
系统:CentOS release 6.5 (Final
IP:192.168.1.93
proftpd版本:1.3.6
proftpd用户/密码:ftpadmin/ftptest
文章中的防火墙自定义
安装yum依赖包
yum -y install gcc gcc-c++ autoconf automake
下载proftpd安装包
wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.6.tar.gz
解压安装包并编译
tar -zxf proftpd-1.3.6.tar.gz
cd proftpd-1.3.6
./configure --prefix=/usr/local/ftp && make && make install
建立FTP组和FTP用户(用户名、用户组),设置密码
mkdir /opt/ftp_soft #创建用户的家目录
groupadd ftpgroup
useradd ftpadmin -g ftpgroup -d /opt/ftp_soft -s /sbin/nologin #创建并指定家目录
passwd ftpadmin
chown ftpadmin:ftpgroup /opt/ftp_soft -R #设置属主:数组,否则即时安装成功也没有权限
修改配置文件
vim /usr/local/ftp/etc/proftpd.conf
#修改
User ftpadmin
Group ftpgroup
DefaultRoot /opt/ftp_soft
#添加
PassivePorts 11100 11111 #被动模式端口段(数据传输)
DefaultAddress 192.168.1.93
添加防火墙
vim /etc/sysconfig/iptables
-A INPUT -p tcp --dport 11100:11111 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
重新加载防火墙
/etc/sysconfig/iptables
启动proftpd服务
/usr/local/ftp/sbin/proftpd
关闭proftpd服务
killall proftpd或kill -9 PID号
ftp
ftp2
报错
[root@bogon proftpd-1.3.6]# /usr/local/ftp/sbin/proftpd
2018-01-08 11:41:14,650 bogon proftpd[11906]: warning: unable to determine IP address of 'bogon'
2018-01-08 11:41:14,650 bogon proftpd[11906]: error: no valid servers configured
2018-01-08 11:41:14,650 bogon proftpd[11906]: fatal: error processing configuration file '/usr/local/ftp/etc/proftpd.conf'
原因是无法绑定ip地址。
DefaultAddress 192.168.1.93 #添加
脚本
#/bin/bash
FTP_HOME=/usr/local/ftp
FTP_SOFT=proftpd-1.3.6.tar.gz
FTP_IP=` ifconfig eth0 | grep "inet addr" | awk '{ print $2}'| awk -F: '{print $2}'`
cd /root
yum -y install gcc gcc-c++ autoconf automake
if [ ! -f "$FTP_SOFT" ]; then
wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.6.tar.gz
fi
tar -zxf proftpd-1.3.6.tar.gz
cd /root/proftpd-1.3.6
./configure --prefix=$FTP_HOME && make && make install
#建立FTP组和FTP用户(用户名、用户组),设置密码
mkdir /opt/soft
echo "user:"
read USER
echo "set password:"
read PASSWORD
groupadd proftp
useradd $USER -g proftp -d /opt/soft -s /sbin/nologin
chown $USER:proftp /opt/soft -R
echo "$PASSWORD"| passwd --stdin $USER
#修改配置文件
sed -i '29s/^/#/g' $FTP_HOME/etc/proftpd.conf
sed -i '30s/^/#/g' $FTP_HOME/etc/proftpd.conf
sed -i '34s/^/#/g' $FTP_HOME/etc/proftpd.conf
echo "User $USER
Group proftp
DefaultRoot /opt/soft
PassivePorts 11100 11111
DefaultAddress $FTP_IP" >>$FTP_HOME/etc/proftpd.conf #被动模式端口段(数据传输)
#添加防火墙
sed -i '/--dport 22/a\-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT' /etc/sysconfig/iptables
sed -i '/--dport 22/a\-A INPUT -p tcp --dport 11100:11111 -j ACCEPT' /etc/sysconfig/iptables
#重新加载防火墙
/etc/init.d/iptables reload
#启动服务
$FTP_HOME/sbin/proftpd
网友评论