search 登录 注册
arrow_back返回列表
ID:113652
light_modedark_modestar
Lv.1 韶华一笑间
edit_note帖子 342
stars积分 2,312
event加入 2012-06-28
电脑网络

网站安全防御CC的iptables规则 简单又实用

schedule发表于 2012-08-12 19:19:00 visibility查看 499 chat_bubble回复 2
#1 楼主
#!/bin/sh

IPTABLES=“/sbin/iptables“

echo “1“ > /proc/sys/net/ipv4/ip_forward

$$$$IPTABLES -P INPUT *

$$$$IPTABLES -P FORWARD *

$$$$IPTABLES -P OUTPUT *

$$$$IPTABLES -F

$$$$IPTABLES -X

$$$$IPTABLES -Z

#$$$$IPTABLES -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

# 如果同时在80端口的连接数大于10,就*掉这个ip

netstat -an | grep :80 | awk -F: ‘{ print $$$$8 }‘ | sort | uniq -c | awk -F\ ‘$$$$1>10 && $$$$2!=““ { print $$$$2 }‘ >> /etc/fw.list

less /etc/fw.list | sort | uniq -c | awk -F\ ‘$$$$2!=““ { print $$$$2 }‘ > /etc/fw.list2

less /etc/fw.list2 > /etc/fw.list

while read line

do

t=`echo “$$$$line“`

$$$$IPTABLES -A INPUT -p tcp -s $$$$t -j *

done < /etc/fw.list2

$$$$IPTABLES -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

$$$$IPTABLES -A INPUT -p tcp –dport 22 -j ACCEPT

$$$$IPTABLES -A INPUT -p tcp –dport 443 –tcp-flags SYN,ACK,FIN,RST SYN -m limit –limit 30/m –limit-burst 2 -j ACCEPT

$$$$IPTABLES -A INPUT -p tcp –dport 80 –tcp-flags SYN,ACK,FIN,RST SYN -m limit –limit 30/m –limit-burst 2 -j ACCEPT

#限制连往本机的web服务,单个IP的并发连接不超过10个,超过的被拒绝

$$$$IPT -A INPUT -i $$$$INTERNET -p tcp –dport 80 -m connlimit –connlimit-above 10 -j REJECT

$$$$IPT -A INPUT -i $$$$INTERNET -p tcp –dport 443 -m connlimit –connlimit-above 10 -j REJECT

#限制连往本机的web服务,单个IP在60秒内只允许最多新建15个连接,超过的被拒绝

$$$$IPT -A INPUT -i $$$$INTERNET -p tcp –dport 80 -m recent –name BAD_HTTP_ACCESS –* –seconds 60 –hitcount 15 -j REJECT

$$$$IPT -A INPUT -i $$$$INTERNET -p tcp –dport 80 -m recent –name BAD_HTTP_ACCESS –set -j ACCEPT

$$$$IPT -A INPUT -i $$$$INTERNET -p tcp –dport 443 -m recent –name BAD_HTTP_ACCESS –* –seconds 60 –hitcount 15 -j REJECT

$$$$IPT -A INPUT -i $$$$INTERNET -p tcp –dport 443 -m recent –name BAD_HTTP_ACCESS –set -j ACCEPT

#限制连往本机的web服务,1个C段的IP的并发连接不超过150个,超过的被拒绝

$$$$IPT -A INPUT -i $$$$INTERNET -p tcp –dport 80 -m iplimit –iplimit-above 150 –iplimit-mask 24 -j REJECT

$$$$IPT -A INPUT -i $$$$INTERNET -p tcp –dport 443 -m iplimit –iplimit-above 150 –iplimit-mask 24 -j REJECT

$$$$IPTABLES -A OUTPUT -p tcp -s 127.0.0.1 -j ACCEPT

$$$$IPTABLES -A OUTPUT -p udp -s 127.0.0.1 -j ACCEPT

$$$$IPTABLES -A INPUT -p tcp –syn -j *

#防止被tracert

iptables -A INPUT -m ttl –ttl-eq 1 -j *

iptables -A INPUT -m ttl –ttl-lt 4 -j *

iptables -A FORWARD -m ttl –ttl-lt 6 -j *

全部回复 (2)

ID:76958
light_modestarstarstar
Lv.4 莫问四书意
2012-08-12 19:24:00 沙发
看帖回帖是美德!
ID:75472
light_modedark_modestarstar
Lv.5 甘首五朝臣
2012-08-12 23:30:00 板凳
支持你! 惜缘】顶贴组
登录 后才能回复