iptables常用命令
# Generated by iptables-save v1.4.21 on Sun Apr 28 15:46:01 2019 *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [165:18437] -A INPUT -p tcp -m tcp --dport 20022 -j ACCEPT -A INPUT -p tcp -m tcp --dport 15122 -j ACCEPT -A INPUT -p tcp -m tcp --dport 18888 -j ACCEPT -A INPUT -m state --state RELATED,ESTABLISHED -m comment --comment "允许已经建立的连接" -j ACCEPT -A INPUT -i lo -m comment --comment "允许lo口所有流量通过" -j ACCEPT -A INPUT -p tcp -m tcp --dport 9999 -m state --state NEW -m comment --comment "开启APPNODE服务" -j ACCEPT -A INPUT -p tcp -m tcp --dport 8888 -m state --state NEW -m comment --comment "开启APPNODE服务" -j ACCEPT -A INPUT -m comment --comment "拒绝所有没有显式开启的" -j REJECT --reject-with icmp-host-prohibited -A FORWARD -m comment --comment "拒绝所有没有显式开启的转发" -j REJECT --reject-with icmp-host-prohibited
iptables规则默认保存在cat /etc/sysconfig/iptables文件中
按照序号查询iptables规则
iptables -L -n --line-number
保存iptables规则使其生效
service iptables save
指定序号删除规则
iptables -D INPUT 编号
iptables转发,将所有来自于172.30.10.7:9002的请求转发到172.30.10.64:9002
iptables -t nat -I PREROUTING -d 172.30.10.7 -p tcp -m tcp --dport 9002 -j DNAT --to-destination 172.30.10.64:9002
把所有来自192.168.122.0/255.255.255.0网段访问192.168.122.173:22的数据全部通过192.168.122.1这个网关转发出去
iptables -t nat -A POSTROUTING -s 192.168.122.0/255.255.255.0 -d 192.168.122.173 -p tcp -m tcp –dport 22 -j SNAT –to-source 192.168.122.1
开启服务器的IPtables的转发功能,br0指实际网卡名称
iptables -t nat -A POSTROUTING -o br0 -j MASQUERADE
参考:https://www.ilanni.com/?p=7016
注意事项:放在reject之前的规则才是有效的,放在reject之后的开放的端口是无效的,这里需要注意iptables的链顺序
iptables -A INPUT -m comment --comment "拒绝所有没有显式开启的" -j REJECT --reject-with icmp-host-prohibited
e.g
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 50000 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 1521 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT -A FORWARD -m tcp -p tcp --dport 8080 -j ACCEPT -A FORWARD -m tcp -p tcp --dport 1521 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT