Ich habe einen SSH-Tunnel eingerichtet (unter Linux) und möchte meinen gesamten Netzwerkverkehr dadurch leiten. Allerdings läuft bei mir auch Tor, und ich möchte nicht, dass der Tor-Verkehr durch den SSH-Tunnel läuft. Ich kann den gesamten Verkehr durch den SSH-Tunnel leiten, indem ich verwende redsocks
(ich lasse SSH einen SOCKS-Proxy ausführen, führe aus redsocks
und verwende eine iptables
Regel, um den gesamten Verkehr auf umzuleiten redsocks
, sodass der gesamte Verkehr durch den Tunnel läuft).
Ich weiß jedoch nicht, wie ich Tor dazu bringen kann, den Tunnel zu vermeiden und direkte Verbindungen herzustellen … früher iptables
gab es eine --pid-owner
Option, die dafür perfekt gewesen wäre, aber sie wurde entfernt, weil sie nicht richtig implementiert werden konnte.
Wie kann ich das jetzt am besten machen? (Der SSH-Tunnel-Ansatz ist behoben: Ich kann nicht zu einer anderen Art von VPN wechseln.)
Antwort1
tor
Wird auf demselben System ausgeführtredsocks
, auf dem Sie ausgeführt werden.- Machen Sie eine Ausnahme für den
tor
Socks-Port 9050 auf Ihrem Remote-System – legen Sieiptables
oben eine Regel fest, die ihn zulässt usw. - Weisen Sie Ihren Browser an, für die Tor-Nutzung eine Verbindung zu {Remote-System-IP}:9050 statt zu localhost herzustellen.
- Wenn Sie die Funktion auch lokal ausführen
privoxy
, sollten Sie sie auch auf dem Remote-System ausführen.
Eine andere Möglichkeit besteht darin, einen anderen SOCKS-Proxy zu verwenden, mit dem Sie bestimmte Ports an einen anderen lokalen Proxyserver weiterleiten können. Ich denke, das squid
ermöglicht Ihnen dies.
Antwort2
Die Option „iptables“ ist --uid-owner
Teil der -m owner
Übereinstimmung. Dies könnte der Grund dafür sein, dass Sie so große Schwierigkeiten hatten, sie zu finden.
Eine Regel wie diese würde funktionieren:
-A OUTPUT -m owner --uid-owner 998 -m conntrack --ctstate NEW -j ACCEPT
wobei 998 stattdessen die UID von Tor ist. Und wo Sie es an Ihre vorhandene Firewall anpassen.