iptable防火墙案例

Posted icemonkey

tags:

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

[[email protected] firewall]# cat /etc/sysconfig/iptables
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i em2 -j ACCEPT
-A INPUT -i em1 -j ACCEPT
-A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 10 -j DROP
-A INPUT -p tcp --dport 80 --syn -m recent --name webpool --rcheck --seconds 50 --hitcount 10 -j LOG --log-prefix ‘DDOS:‘ --log-ip-options
-A INPUT -p tcp --dport 80 --syn -m recent --name webpool --rcheck --seconds 50 --hitcount 10 -j DROP
-A INPUT -p tcp --dport 80 --syn -m recent --name webpool --set -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 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT







#允许单个IP的最大连接数为30
iptables -I INPUT -i em1 -p tcp --dport 80 -m connlimit  --connlimit-above 10 -j DROP
iptables -A INPUT -i em2 -p tcp --dport 80 -m recent --name BAD_HTTP_ACCESS --update --seconds 60 --hitcount 30 -j REJECT
iptables -A INPUT -i em2 -p tcp --dport 80 -m recent --name BAD_HTTP_ACCESS --set -j ACCEPT


netstat -ant | grep "EST" | grep -v "22000" | awk ‘{print $5}‘ | grep -v "^10" | cut -d ":" -f1 | sort | uniq -c | sort -nr | awk ‘$1 > 4 {print $1,$2}‘

以上是关于iptable防火墙案例的主要内容,如果未能解决你的问题,请参考以下文章

iptables案例手册

Linux防火墙详解

iptables Data filtering详解

Linux防火墙综合案例: 两个私有网络的互相通讯

如何启用iptables 防火墙

2018-06-11 第十三次课