我正在尝试将 IPTables 配置为仅接受来自 10.0.0.1 的 http 连接并拒绝其他所有连接。当我从 10.0.0.1 建立 http 连接时,该连接被阻止。我面临另一个问题。我尝试允许 DNS 在传出方向并阻止其他所有连接。问题是当我使用 OUTPUT DROP 时,所有内容都会被丢弃
这是我所做的
iptables -A INPUT -p tcp -s 10.0.0.1 --dport 80 -j ACCEPT
iptables -A INPUT DROP
iptables -A OUTPUT -p udp -d 8.8.8.8 --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp -d 8.8.8.8 --dport 53 -j ACCEPT
iptables -P OUTPUT DROP
答案1
您的输出链存在问题,因为您允许数据包通过 53 端口发送至 DNS。但由于您没有为已建立的连接指定规则,因此响应被丢弃。
添加:
iptables -A OUTPUT -m state --state ESTABLISHED -j ACCEPT
您的输入链也是如此。