Iptables之端口开放

一、开放80端口

WEB服务器IP 172.16.100.1

iptables -A INPUT -d 172.16.100.1 -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -s 172.16.100.1 -p tcp --sport 80 -j ACCEPT

如果不是开放的80端口而是其他端口请将80端口改变成你需要的端口

二、关于icmp协议的规则

允许本机 ping 通外网,但不允许外网 ping 本机
 iptables -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
允许外网 ping 本机
 iptables -A OUTPUT -p icmp --icmp-type 0 -j ACCEPT
 iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT

三、开放FTP服务

大家都知道ftp返回数据的时候端口不是固定的,所以我们不能像开放web服务的那样直接开放某个端口,所以很多人开放了21端口之后都不能正常的访问ftp服务器,在里我们就使用Iptables的扩展模块来开放ftp

3.1、开启被动模式FTP支持

/etc/sysconfig/iptables-config里面添加ip_nat_ftp、ip_conntrack_ftp模块,如下:
vim /etc/sysconfig/iptables-config
IPTABLES_MODULES="ip_nat_ftp"
IPTABLES_MODULES="ip_conntrack_ftp"

3.2、然后重启iptables或者执行如下命令

lsmod | grep ftp (查看是否加载ftp模块)
modprobe ip_nat_ftp(加载ftp模块)
lsmod | grep ftp (查看模块是否被加载)

3.3、之后只需要添加规则

iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 21 -j ACCEPT