ssh port forwarding auf alternative loopback IP

Post Reply
Message
Author
can garbage

ssh port forwarding auf alternative loopback IP

#1 Post by can garbage »

Hallo,

ich möchte mit ssh einen Tunnel mit Port Forwarding von der Firma durch eine Firewall auf meinen Heimrechner erstellen. Ich habe das bereits mehrfach gemacht um z.B. das Netzwerk zu verbinden mit Port 139 oder VNC mit Port 5901 usw.

Das Problem, wenn ich ssh starte mit -L 139:localhost:139 erhalte ich die Meldung dass Port 139 auf meinem Rechner bereits belegt ist. Das ist auch so weil da ein Samba Server läuft. Also versuche ich eine andere Loopback Adresse zu verwenden, z.B. ssh -L 127.0.0.2:139:localhost:139. Das geht aber auch nicht weil der Samba Server Port 139 auf sämtlichen localhost Loopback Adressen belegt, also 127.0.0.0 bis 127.255.255.255.

Das gleiche Problem habe ich mit VNC und allen anderen Diensten welche auf dem PC laufen.

Ich verwende Suse 10.0. Ich habe das gleiche versucht mit Windows XP und PuTTY, mit dem gleichen Resultst.
Einzig Windows 2000 funktioniert. Dort kann ich mit PuTTY mehrere Verbindungen auf verschiedene Rechner Tunneln und mit den Adressen 127.0.0.2, 127.0.0.3 usw. belegen. Das Windows Netzwerk ist auf localhost bzw. 127.0.0.1 sowie auf dem Netzwerk immer noch verfügbar.

Wie bringe ich Suse Linux dazu nur eine einzige localhost Adresse mit 127.0.0.1 für die Dienste wie Samba oder VNC zu belegen damit ich die anderen Adressen frei verwenden kann ohne dass ich diese Dienste vollständig abschalten muss?

Danke,
Can

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#2 Post by Janka »

Das Problem lässt sich nicht global lösen. Dass es bei deinem MS-Windows 2000-Rechner funktioniert ist wohl einer anderen Dienstkonfiguration auf diesem speziellen System geschuldet.

Die Dienste binden normalerweise an allen lokalen Interfaces und Adressen (INADDR_ANY/Portnummer), daher ist die Portnummer für den Kernel das einzige Unterscheidungsmerkmal, um einem Request einen Socket, und damit den dort laufenden Dienst zuzuordnen.

Man muss es jedem Dienst einzeln sagen, dass er das nicht machen soll. Bei der sshd gibt es z.B. die Konfigurationseinstellung "ListenAddress", mit der man INADDR_ANY durch spezifische Adressen ersetzen kann.

Samba kann man ebenfalls so konfigurieren. Dort heißt die Option "socket addess"

$ man sshd_config
$ man smb.conf

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

can garbage

#3 Post by can garbage »

Vielen Dank für die schnelle Antwort.

Ich habe mich da völlig in den Netzwerkseinstellungen verrannt. Ist aber irgendwie doch logisch dass es an der Konfiguration der einzelnen Dienste liegt.

Can

Post Reply