我正在尝试为 ProxyChains-over-Tor 配置 nftables 规则,以便:
My system --> Tor SOCKS5 proxy --> HTTP proxy --> Internet
- 我的系统只能与 Tor SOCKS5 代理通信
- Tor SOCKS5代理只能与我的系统和HTTP代理通信
- HTTP 代理只能与 Tor SOCKS5 代理和互联网通信
- 互联网只能与 HTTP 代理通信
我看到本文阻止除 Tor 访问之外的所有内容的正确 nftables 规则是:
chain output {
ip daddr 127.0.0.1 tcp dport 9050 accept
reject
}
这仅适用于 Tor,但是当涉及到另一个代理时就会有点混乱。
目前,我针对此场景制定了以下 nftables 规则:
chain output {
ip daddr 127.0.0.1 tcp dport 9050 accept
ip daddr 127.0.0.1 tcp dport 9050 tcp sport {proxy_port} ip saddr {proxy_ip} accept
reject
}
这个简单的更改足以执行上述限制吗?还是我需要在规则配置中引入带有输入/转发链的更复杂的设置,以防止我的系统直接与代理通信(或直接与互联网通信)?
我将非常感激任何指导、建议或示例配置,以实现 ProxyChains-over-Tor 的正确 nftables 规则。提前谢谢您!