我有一台 Linux 服务器,用作内部网络的路由器。我需要使用 iptables 屏蔽除一两个网站之外的所有网站。
我该如何设置?
答案1
这里是:
iptables -I INPUT 1 -i lo -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp -d somewebsite.com --dport 80 -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT DROP
这将允许 DNS 和对指定域的访问。如果您想删除 DNS 条目 (--dport 53),您只需将站点的条目添加到您的 /etc/hosts 文件中。我几乎放弃了,直到我在评论中看到 conntrack。
只需允许其他站点复制站点行并进行相应调整即可。将它们全部保留在 DROP 之上。
您可能还会发现我之前的一个与 iptables 相关的答案对您的工作很有用。需要 iptables 规则来接受所有传入流量
享受