生产环境下的iptables设置,这是我自己的一点总结,浅显之处望大家指出批评,共同学习。
我的局域网为192.168.1.0/24。
1.先清空所有规则
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
iptables -t nat -X
iptables -t nat -Z
设置默认规则前开发ssh(6123)端口
iptables -A INPUT -i eth0 -s 192.168.1.0/24 -p tcp --dport 6123 -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sdport 6123 -j ACCEPT
设置默认规则
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
打开回环设备
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
开发ftp服务器(21)
iptables -A INPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 21 -m state --state ESTABLISHED,RELATED -j ACCEPT
开发WWW服务器(80,443)
iptables -A INPUT -p tcp -m multiport --dports 80, 443 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p tcp -m multiport --dports 80, 443 -m state --state ESTABLISHED,RELATED -j ACCEPT
允许DNS出站连接
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --sport 53 -j ACCEPT
如果服务器还要开发其他服务,可以相应添加。
在linux中配置防火墙时,一定要注意iptables中规则的顺序,哪个在前,哪个在后。
根据以后的学习,此文会实时更新。望大家多给提点意见,共同进步!