如何阻止除 Tor 之外的所有出站流量

如何阻止除 Tor 之外的所有出站流量

我尝试使用这些规则,iptables但在我使用相同的规则后ip6tables,它阻止了一切。

为什么我的ip6tables规则会阻止一切?

iptables -F OUTPUT
iptables -A OUTPUT -j ACCEPT -m owner --uid-owner debian-tor
iptables -A OUTPUT -j ACCEPT -o lo
iptables -P OUTPUT DROP


ip6tables -F OUTPUT
ip6tables -A OUTPUT -j ACCEPT -m owner --uid-owner debian-tor
ip6tables -A OUTPUT -j ACCEPT -o lo
ip6tables -P OUTPUT DROP


答案1

要阻止 IPv4 和 IPv6 上除 Tor 之外的所有传出流量,您可以使用以下规则:

iptables -F OUTPUT
iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
iptables -A OUTPUT -m owner --uid-owner debian-tor -j ACCEPT
iptables -A OUTPUT -j DROP

ip6tables -F OUTPUT
ip6tables -A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
ip6tables -A OUTPUT -o lo -j ACCEPT
ip6tables -A OUTPUT -p icmpv6 -j ACCEPT
ip6tables -A OUTPUT -m owner --uid-owner debian-tor -j ACCEPT
ip6tables -A OUTPUT -j DROP

ip6tables规则中,您允许传出 ICMPv6 流量,以确保仍然允许重要的网络协议(例如邻居发现和路由器通告)。这是 IPv6 连接所必需的。

答案2

我已经解决了 Firefox 代理设置的问题:使用 SOCKS v5 时未检查代理 DNS

因此原始 iptables 的设置无需启用 icmpv6 即可工作

相关内容