centos5.3vsftpd 被动模式的iptables设置
时间:2009-08-05 来源:ben1984
vsftpd 被动模式的iptables设置
原理
PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的XXXX端口发送连接请求,建立一条数据链路来传送数据。
PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。
首先:
/etc/vsftpd/vsftpd.conf添加:
pasv_max_port=9999
pasv_min_port=9001
其次:
再写一个脚本:
#!/bin/sh
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -P INPUT DROP
/sbin/iptables -A INPUT -m state –-state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A INPUT -p tcp –-dport 9001:9999 -j ACCEPT
/sbin/iptables -A INPUT -p tcp –-dport 20 -j ACCEPT
/sbin/iptables -A INPUT -p tcp –-dport 21 -j ACCEPT
/sbin/iptables -A INPUT -p tcp –-dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p tcp –-dport 80 -j ACCEPT
chmod +x ipfw.sh
./ipfw.sh
service vsftpd restart
成功!