PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit SSH Tunneling



Ghostblade0
10.09.04, 09:41
Hi @ all!!!

ich hab ein kleines Problem. Würde mich freuen wenn mir einer helfen kann.


Ich hab ein Testnetz aufgebaut:

+-----+ +-----+ +-----+ +-----+ +-----+
| SV2 |-----| SV1 |-----| FWL |-----| ROU |-----| CLI |
+-----+ +-----+ +-----+ +-----+ +-----+

SV2 = Server (RedHat8)
SV1 = Server (Fedora Core2) (mit 2 Netzwerkkarten)
FWL = Firewall (Paketfilter nicht pingbar)
ROU = Cisco Router
CLI = Client (Windows XP) (Putty)

So... :)

mein Problem ist ich hab auf Server2 einen Webserver laufen auf den ich gern vom Client zugreifen möchte...
Die Firewall blockt alle SYN-Pakete die von der Seite der Server kommen.
Also versuche ich einen Tunnel zu bauen.

ich stell mir das so vor:

Ich verbinde mein Putty mit dem SV1 und baue einen Tunnel von meinem lokalen Port:8080 zu SV1:80
Dann muß ich mich mit ssh von SV1 zu SV2 verbinden und den Tunnel SV1:80 SV2:80 bauen
Dann müste ich doch eigendlich mit meinem Browser auf http://localhost:8080 den Webserveranschauen können oder?

Ich hab das schon mal versucht aber es hat irgendie nicht geklappt...
Ich weiß nicht was ich beim Tunneln einstellen muß...

local oder remote Tunneling??? Die Manpage ist mir unverständlich...

Kann mir Jemand helfen? :confused:

Schärple
10.09.04, 10:32
Ich nehme an, Du kannst deinen sv2 nicht direkt erreichen - oder warum sonst der Umstand?

Versuch mal vom Client nach SV1:

SSH -L8080:<ip-von-sv2>:80 <user>@<ip-von-sv1>

In diesem Fall machst Du also ein lokales Portforwarding (Du leitest ja deinen lokalen port 8080 auf einen Zielserver weiter).


danach mit deinem Browser http://localhost:8080 aufrufen.

EDIT: Ich sehe gerade Du tunnelst mit Putty von Windows aus. Am Prinzip ändert sich jedoch nichts. Musst das dann halt statt in der Konsole in Putty einstellen.

Ghostblade0
10.09.04, 10:42
Versuch mal vom Client nach SV1:
SSH -L8080:<ip-von-sv2>:80 <user>@<ip-von-sv1>

Das Problem ist das ich mich erst an dem SV1 anmelden muß und dann von da eine SSH verbindung zu SV2 aufbauen muß.

Ich kann den SV2 nicht direkt per SSH erreichen.

also mach ich vom client zu SV1:

ssh -L 8080:SV1:80 SV1

oder muß ich:

ssh -L 8080:SV2:80 SV1

machen???

Schärple
10.09.04, 10:49
Das Aufbauen eines zweiten Tunnels ist nicht nötig. Wenn Du das so machst wie von mir beschrieben, erstellst Du eine SSH Verbindung zu deinem SV1. Das Tunnelende zeigt jedoch von zu Server 1 relativ auf die von die gewählte IP deines SV2. SSH baut den Tunnel auf und mappt dann auf deinen SV2 Port 80.

ssh -L 8080:SV2:80 SV1 ist also richtig.

Ghostblade0
10.09.04, 11:05
Ok hat funktioniert.
Danke!!! :D

caraboides
12.09.04, 14:46
habe ein ähnliches Problem:

Home-Linux--------[Internet]-----Server+Firewall----[Buronetz]---WinXP+VNCserver

ich kann von home-Linux nicht auf den VNCServer also will ich ein VNC Tunnel bloss wo und wie? Ich dachte mir das ich das auf dem Server machen muss.

Danke für eure Hilfe.

Terran Marine
12.09.04, 15:33
habe ein ähnliches Problem:

Home-Linux--------[Internet]-----Server+Firewall----[Buronetz]---WinXP+VNCserver

ich kann von home-Linux nicht auf den VNCServer also will ich ein VNC Tunnel bloss wo und wie? Ich dachte mir das ich das auf dem Server machen muss.


Hast du vom Server/Firewall (ein oder zwei Maschinen?) unbeschränkten Zugriff auf den WinXP Rechner ?
(Unbeschränkt ist übertrieben, VNC muss halt einwandfrei durchgehen)

Gruß
Terran

Schärple
12.09.04, 16:00
habe ein ähnliches Problem:

Home-Linux--------[Internet]-----Server+Firewall----[Buronetz]---WinXP+VNCserver

ich kann von home-Linux nicht auf den VNCServer also will ich ein VNC Tunnel bloss wo und wie? Ich dachte mir das ich das auf dem Server machen muss.

Danke für eure Hilfe.

Da bietet sich ein reversed SSH Tunnel an. Ist ein bisschen tricky und für Anfänger nicht ganz so leicht zu durchschauen, was da passiert aber wenn man sich mühe gibt sollte es zu verstehen sein.

Von dem VNC Host aus musst du nun einen SSH Tunnel mit folgenden Optionen öffnen.

SSH -R<port_auf_deinem_homelinux>:localhost:<port_des_vncservers> user@home_linux

Danach kannst Du die VNC Session öffnen, wenn Du mit deinem VNC Client auf localhost:<port_auf_deinem_homelinux> verbindest.


Grüße

ps: Das Ganze ist mit sehr hoher Warscheinlichkeit in deiner Firma nicht erlaubt und kann zur Kündigung führen. Überleg Dir also gut was Du tust.