我想阻止我的两个 DNS 服务器上除某些 IP 地址之外的所有传入请求,例如 IP 1.2.3.4 将被允许发出请求,但其他任何 IP 都不允许。
如何使用 iptables 来实现这一点?
非常感谢。
答案1
使用 iptables 非常简单:
我假设你的 INPUT 链最后没有默认的 DROP 规则,否则你必须解决这个问题:
# Allow DNS (53) from <source IP>
iptables -A INPUT -p udp --dport 53 -s <source IP> -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -s <source IP> -j ACCEPT
# Deny all other DNS requests
iptables -A INPUT -p udp --dport 53 -j DROP
iptables -A INPUT -p tcp --dport 53 -j DROP
如果您有默认的 DROP 策略,只需删除底部的两个规则即可。如果您的链底部有默认的 DROP 规则,则必须在-I rulenum
该规则上方插入 () 这些规则。