常用的iptables脚本,整理东西时发现的,很好的。记录下来,以备查。
#!/bin/bash
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo 1 >/proc/sys/net/ipv4/conf/all/log_martians
iptables -F
iptables -X
iptables -Z
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -p icmp --icmp-type echo-request -i eth0 -j ACCEPT
## SYN-Flooding
iptables -N syn-flood
iptables -A INPUT -i eth0 -p tcp --syn -j syn-flood
iptables -A syn-flood -m limit --limit 300/s --limit-burst 4 -j RETURN
iptables -A syn-flood -j DROP
iptables -A INPUT -i eth0 -p tcp ! --syn -m state --state NEW -j DROP
iptables -A INPUT -j ACCEPT -i eth0 -m tcp -p tcp --dport 22
iptables -A INPUT -j ACCEPT -i eth0 -m tcp -p tcp --dport 80
iptables -A INPUT -j ACCEPT -i eth0 -m tcp -p tcp --dport 443
iptables -A INPUT -i eth0 -j DROP
把以上文件存入一个位置,如:/data/run/iptable.sh
然后开机运行:/data/run/iptable.sh
即可。