之前实际生产环境下没有配置过iptables,结果把INPUT链DROP,导致失去连接,不得不跑去机房……想起来可笑。
在远程putty到linux主机上首次做iptables规则时需按以下步骤,以免造成远程断开再也登不了远程linux主机的麻烦.
1.清除原有filter规则.
[root@linux ~]# iptables -F 清除预设表filter中的所有规则链的规则
[root@linux ~]# iptables -X 清除预设表filter中使用者自定链中的规则
2.清除原有filter规则后的信息应为下面的样子
[root@linux ~]# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
3.保存所做的修改和重启iptables
[root@linux ~]# /etc/rc.d/init.d/iptables save
[root@linux ~]# service iptables restart
4.添加远程ssh端口
[root@linux ~]#iptables -A INPUT -p tcp --dport 22 -j ACCEPT
[root@linux ~]#iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
(一定要先写上)
5.设定预设规则
[root@linux ~]# iptables -P INPUT DROP
[root@linux ~]# iptables -P OUTPUT DROP
[root@linux ~]# iptables -P FORWARD DROP
6.再次保存所做的修改和重启iptables
[root@linux ~]# /etc/rc.d/init.d/iptables save
[root@linux ~]# service iptables restart
7.添加其他端口(可以在第5步之前一起配置)
[root@linux ~]#iptables -A INPUT -p tcp --dport 80 -j ACCEPT
[root@linux ~]#iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT
[root@linux ~]#iptables -A INPUT -p tcp --dport 21 -j ACCEPT
[root@linux ~]#iptables -A OUTPUT -p tcp --sport 21 -j ACCEPT
[root@linux ~]#iptables -A INPUT -p tcp --dport 30000:50000 -j ACCEPT
[root@linux ~]#iptables -A OUTPUT -p tcp --sport 30000:50000 -j ACCEPT
[root@linux ~]iptables -A INPUT -i eth0 -p icmp --icmp-type echo-request -j ACCEPT
[root@linux ~]iptables -A OUTPUT -o eth0 -p icmp --icmp-type echo-request -j ACCEPT
[root@linux ~]#iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
[root@linux ~]#iptables -A OUTPUT -p tcp --sport 3306 -j ACCEPT
[root@linux ~]# /etc/rc.d/init.d/iptables save
[root@linux ~]# service iptables restart
如果要清除规则,一定要现把INPUT链改为ACCEPT
[root@linux ~]# iptables -F 清除预设表filter中的所有规则链的规则
这样远程连接就不会中断。
阅读(3510) | 评论(0) | 转发(2) |