Um zu tun, was Sie wollen, empfehle ich sshuttle .
Du benutzt es so:
./sshuttle -r username@sshserver 0.0.0.0/0 -vv
Der gesamte TCP-Verkehr wird automatisch für Sie getunnelt. Sie können das --dns
Argument hinzufügen, damit der DNS-Verkehr ebenfalls getunnelt wird. Auf dem Remote-Server muss nur Python installiert sein.
Wenn Sie nur bestimmte Programme tunneln möchten, würde ich Proxy-Ketten empfehlen .
Sobald es installiert ist, starte deinen ssh socks Proxy wie folgt:
ssh -fND 127.0.0.1:<local port> username@sshserver
Dies startet einen "SOCKS" -Proxy, der <lokalen Port> überwacht.
Bearbeiten Sie dann /etc/proxychains.conf, um auf denselben Port wie <lokaler Port> zu verweisen.
Starten Sie schließlich Ihr Programm, das Sie als Proxy-Server verwenden möchten:
proxychains <program name>
Es sollte einfach funktionieren. Einige Programme haben jedoch Probleme mit der Arbeit mit Proxy-Ketten. Beachten Sie auch, dass Sie in Firefox unter about: config zusätzliche Elemente ändern müssen, um zu erzwingen, dass DNS-Suchvorgänge über den Proxy ausgeführt werden, anstatt ihn zu umgehen.
Als zusätzliche Anmerkung zu Webbrowsern. Wenn sie Socks-Proxys unterstützen, müssen Sie keine zusätzlichen Schritte ausführen, um sie zur Verwendung des oben genannten SSH-Tunnels zu veranlassen. Geben Sie lediglich 127.0.0.1 für den SOCKS-Proxyserver und den <lokalen Port> für den Proxy-Port ein.
EDIT 29.03.16
Da in diesem Beitrag noch einige positive Stimmen zu finden sind, dachte ich, ich würde es aktualisieren. Proxychains ist immer noch in den meisten Linux-Repos enthalten und funktioniert immer noch unter Linux. Das Projekt wird jedoch effektiv abgebrochen und funktioniert unter OSX nicht. Für Linux oder OSX empfehle ich dringend, ein Upgrade auf einen noch gewarteten Fork durchzuführen: proxychains-ng: https://github.com/rofl0r/proxychains-ng
Abgesehen davon, dass es sowohl unter Linux als auch unter OSX funktioniert, ist es einfach zu kompilieren und bietet eine viel bessere Unterstützung für DNS-Tunneling.
Ich sollte auch eine andere Option erwähnen, nämlich Redsocks. Es funktioniert ähnlich wie Proxy-Ketten (-ng) und befindet sich wahrscheinlich auch in Ihrem dist-Repository: https://github.com/darkk/redsocks