Ich habe zwei Maschinen S
und C
das ist in einem lokalen Netzwerk. Um von jedem Computer im Netzwerk auf das Internet zuzugreifen, muss ein Web-Proxy verwendet werden. Squid3 wird verwendet. Daher kann ich mich immer nur von einem der Computer gleichzeitig beim Proxy anmelden und daher nicht gleichzeitig von den anderen auf das Internet zugreifen.
Also habe ich einen SSH - Tunnel nach oben aus C
zu S
. Ich melde mich beim Web-Proxy an S
. Ich konfiguriere meinen Webbrowser so C
, dass er den Tunnel als Proxy verwendet. Ich kann jedoch nicht über auf das Internet zugreifen C
. Ich erhalte die Fehlermeldung "Verbindung abgelehnt" auf dem Terminal, auf dem ich den SSH-Tunnelprozess gestartet habe.
ssh -fND 8080 user@remotehost
Meine Frage ist: Da S
auch ein Proxy selbst verwendet wird, muss ich weitere Einstellungen vornehmen, damit der SSH-Tunnel funktioniert?
Wie kann S
man mit den Daten umgehen, die C
über den SSH-Tunnel empfangen werden ?
Bearbeiten: Ich habe jetzt Folgendes ausgeführt: Auf habe S
ich einen squid3-Proxyserver installiert und C
die Verwendung des neuen Proxys konfiguriert . Diese Lösung funktioniert. Ich benötige die von SSH bereitgestellte Verschlüsselung nicht. Ich möchte Folgendes wissen: Ist SSH-Tunneling aus einem anderen Grund als der Verschlüsselung besser als meine aktuelle Lösung? (Bitte sagen Sie mir, ob ich dafür eine neue Frage hätte öffnen sollen).
quelle
Antworten:
Hier ist der Befehl, den ich verwende: ssh -g -L192.168.2.1: 8190: Proxy-Server: 3128 Relay-Server
Ich habe also einen Clientcomputer im lokalen Netzwerk, einen lokalen Server, dann einen Server, mit dem ich eine Verbindung herstelle, und schließlich den Proxyserver, der als HTTP-Proxy fungiert. Der Proxy- und der Relay-Server können natürlich identisch sein.
Ich gebe diesen Befehl auf dem lokalen Server, nach dem Clients, die über die Schnittstelle mit der Adresse 192.168.2.1 kommen, den Proxy verwenden können. Die Option -g wird benötigt, damit der Proxy für jedermann geöffnet ist, dh. außerhalb der Maschine, die den Tunnel erstellt. -G verwenden ist riskant, so dass Sie benötigen die lokale Schnittstelle angeben , um zu binden; Sie wollen den Tunnel nicht für die ganze Welt öffnen.
In Ihrem Image wäre "Proxy" sowohl Proxy-Server als auch Relay-Server, "S" der lokale Server und "C" ein Client, der den Tunnel verwendet.
quelle
S
ich nach dem Root-Passwort für den Proxy-Server gefragt. Ist das das richtige Verhalten? Ich habe keinen Zugriff auf den Computer, auf dem der Proxyserver ausgeführt wird.