iptables 一些有用的规则

Posted 百里

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iptables 一些有用的规则相关的知识,希望对你有一定的参考价值。

 

-A INPUT -i lo -j ACCEPT #允许本机内部访问,即回环
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #允许本机访问外部
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT #允许ping
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT #允许22 shell连接
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT #允许80访问
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT #允许https访问
-A INPUT -p tcp -m tcp --dport 3690 -j ACCEPT #允许svn访问
-A INPUT -p tcp -m tcp --dport 3306 -j DROP #禁止mysql外部访问
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8888 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 20000:30000 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
-A INPUT -p icmp -m limit --limit 1/sec --limit-burst 10 -j ACCEPT
-A INPUT -f -m limit --limit 100/sec --limit-burst 100 -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j syn-flood
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A syn-flood -p tcp -m limit --limit 3/sec --limit-burst 6 -j RETURN
-A syn-flood -j REJECT --reject-with icmp-port-unreachable

 

特殊规则,用于防攻击使用

#允许单个IP访问服务器的80端口的最大连接数为 20 
iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 20 -j REJECT

#抵御DDOS ,允许外网最多24个初始连接,然后服务器每秒新增12个,访问太多超过的丢弃,第二条是允许服务器内部每秒1个初始连接进行转发
iptables -A INPUT  -p tcp --syn -m limit --limit 12/s --limit-burst 24 -j ACCEPT
iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT

 

以上是关于iptables 一些有用的规则的主要内容,如果未能解决你的问题,请参考以下文章

iptables转发规则过多导致一些规则不生效?

重启后使用 ipset 的规则

linux运维之iptables的一些操作(参考大神的)

归纳常用的iptables规则

iptables web服务器规则

iptables详解