Angenommen, ich habe ein server
und client
. Ich muss eine Verbindung von client
zu einem website
Durchgang herstellen, server
als wäre es ein Proxy.
Ist es möglich, dies mit einem SSH-Tunnel zu tun, oder muss ich einen Proxy-Dienst auf dem installieren server
?
ssh
proxy
http
ssh-tunnel
Jakub Arnold
quelle
quelle
ssh -L 81:remotehost:80 user@myserver
lokaler Port 81 spricht so, als wäre er 80 auf Remote.Host myserver User user DynamicForward 5000
Ja, es ist möglich.
Führen Sie
ssh -D port user@host
Ihren Client aus und richten Sie ihn so ein, dass er Ihre Box als SOCKS-Proxy verwendet.Wenn Sie speziell einen HTTP-Proxy benötigen, können Sie Proxy-Ketten verwenden und diesen über die vorherigen SOCKS weiterleiten.
quelle
Putty macht das auch ganz gut.
Gehen Sie unter SSH zu Tunnels. Stecken Sie unten 8080 in den Hafen und lassen Sie es als Ziel schwarz und wählen Sie das Optionsfeld "Dynamisch". Das ist alles, was Sie tun müssen, stellen Sie jetzt mit Putty eine Verbindung zum Server her.
Sobald die Verbindung hergestellt ist, befindet sich auf Ihrem lokalen Host ein Proxyserver an Port 8080, der alle Anforderungen über Ihren Server überträgt.
Verwenden Sie nun einen Webbrowser und richten Sie den Proxy ein, indem Sie host = localhost und port = 8080 festlegen und sicherstellen, dass es sich um einen von Ihnen ausgewählten SOCKS-Proxy handelt. Ich mache das die ganze Zeit, also, wenn Sie Firefox verwenden, stellen Sie sicher, dass Sie das FoxyProxy-Plugin installieren, da es den Proxy mit einem Klick ein- und ausschalten kann.
Achtung: Beachten Sie, dass Ihre DNS-Anforderungen standardmäßig nicht per Proxy übermittelt werden. Daher wird die Website, die Sie über den Proxy besuchen, weiterhin protokolliert (sofern diese Inhalte protokolliert werden). Sie können Firefox auch auf Proxy-DNS-Anforderungen einstellen, dies geschieht jedoch nicht standardmäßig.
quelle
sshuttle funktioniert wie ein VPN aber über SSH.
https://github.com/sshuttle/sshuttle
quelle
Damit ein Proxy einen Computer ausführen kann und andere Clients eine Verbindung herstellen können, benötigen Sie die Option -g. Zum Beispiel würden Sie dies auf dem Server mit dem Namen foo ausführen:
Sie können dann den Proxy im Browser eines Clients so einstellen, dass er den Server foo und den Port 9191 für einen SOCKS-Proxy verwendet. Die Clients senden ihre Anfragen zu foo, die wiederum die Anfrage über ssh an remotehost weiterleiten. Im Internet sieht es also so aus, als würden sie Remotehost verwenden.
Wenn Sie DNS-Anfragen auch mit Firefox weiterleiten möchten, bearbeiten Sie die about: config in Firefox und setzen Sie network.proxy.socks_remote_dns auf true.
quelle
Du kannst SSHUTTLE benutzen, hier ist ein Tutorial, wie man es benutzt.
https://etherarp.net/sshuttle-a-vpn-for-the-lazy/
Hier ist ein Tutorial, wie man es so einrichtet, dass es als Service funktioniert.
https://medium.com/@mike.reider/using-sshuttle-as-a-service-bec2684a65fe
quelle