1、禁止其他主机ping
iptables -A INPUT -p icmp --icmp-type 8 -j DROP
iptables -A OUTPUT -p icmp --icmp-type 0 -j DROP
2、只允许某个ip或者网段访问某个端口
禁止某网段访问22端口
iptables -t filter -A INPUT ! -s 192.168.1.0/24 -p tcp --dport 22 -j DROP
3、当访问80端口的连接数达到100后,开始限制为最多允许每分钟25个链接(防止cc攻击)
iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT
4、禁止某IP或网段对多个端口的访问
iptables -A INPUT -s 192.168.1.0/24 -m multiport -p tcp --dport 22,25,3306 -j DROP
5、禁止访问指定端口
iptables -A INPUT -p tcp -m multiport --dport 25,80,3306,443 -j DROP
6、 域名禁止访问、关键词屏蔽
iptables -I FORWARD -s 10.113.0.0/24 -m string --string "ay2000.net" -j DROP # 关键词屏蔽iptables -I FORWARD -s 10.113.0.0/24 -m string --string "eroticism" -j DROP
iptables -A OUTPUT -m string --string "youtube.com" --algo bm --to 65535 -j DROP
这个对域名可能屏蔽不好,因为域名对应的地址可能会变,可以通过在dns记录域名对应的ip,并通过iptables对ip列表进行屏蔽
7、sync flood攻击,限制报文速率
iptables -N syn-flood
iptables -A INPUT -p tcp --syn -j syn-flood
iptalbes -I syn-flood -p tcp -m limit --limit 3/s --limit-burst 6 -j RETURN
iptables -A syn-flood -j REJECT
8、限制同一个ip的连接并发数,防止cc攻击,限制并发数和连接数
iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 20 -j DROP
9、限制某个网络接口信任的ip
iptables -A INPUT -i vlan5 -s 10.0.0.6 -p all -j ACCEPT
iptables -A INPUT -i vlan5 -j DROP
10、限制应用连接的特定策略
mark = 100;
setsockopt(client_socket, SOL_SOCKET, SO_MARK, &mark, sizeof(mark));
ip rule add fwmark 0x1/0xF table 10
11、开关4g
iptables -N 4g_rule
iptables -A OUTPUT -o vlan6 -j 4g_rule
iptables -A 4g_rule -j ACCEPT/REJECT