IPTables 是一个 Linux 内核的防火墙工具,可以用于设置和管理网络规则
限制措施
以 1.2.3.4 通过 53 端口访问 DNS 服务为例:
- 禁止所有IP
iptables -I INPUT -p tcp --dport 53 -j DROP
- 连接速率限制为100Mbps
iptables -A INPUT -s 1.2.3.4 -p tcp --dport 53 -m limit --limit 100mbit/s -j ACCEPT
- 一般限制请求连接数
iptables -A INPUT -s 1.2.3.4 -p tcp --dport 53 -m connlimit --connlimit-above 2 -j DROP
- 限制请求连接数
iptables -A INPUT -s 1.2.3.4 -p tcp --dport 53 -m connlimit --connlimit-above 5 --connlimit-mask 32 -j REJECT --reject-with tcp-reset
这个命令中,“-m connlimit” 参数用于指定使用连接限制模块,“–connlimit-above 5” 参数用于指定每秒钟最多建立 5 个连接,“–connlimit-mask 32” 参数用于指定要限制的是源 IP 地址,“-j REJECT --reject-with tcp-reset” 参数用于将超过连接限制的连接拒绝,并向客户端发送 TCP RESET 报文