Verkettung von SSH-TCP-Portweiterleitung

Verkettung von SSH-TCP-Portweiterleitung

Ich muss mich mit einem DB-Server verbinden, der Verbindungen auf Port 1521 akzeptiert. Ich kann nur von einem Remote-Rechner darauf zugreifen, bei dem ich mich per SSH anmelden muss.ein andererTor.

also von zu Hause

home $ ssh benutzer@gateway

Gateway $ SSH-Desktop

desktop $ < Ich habe jetzt Zugriff auf Port 1521 auf dem Host-DBServer >

Welche Befehle muss ich dafür verwenden, damit ich mich dann für DB-Verbindungen mit localhost:1521 auf dem Heim-PC verbinde?

Antwort1

Zwei Möglichkeiten der Verkettung:


  1. Verbinden vonheimZuTor, Weiterleitung localhost:1521amheimüberTorZu .localhost:PORT

  2. Verbinden vonTorZuDesktop-Computer, Weiterleitung amlocalhost:PORTTorüberDesktop-ComputerZu dbserver:1521.

home$ ssh -ftL 1521:localhost:HAFENGateway SSH -NLHAFEN:dbserver:1521 Desktop

HAFENkann 1521 oder ein beliebiger anderer Port sein.


  1. Verbinden vonheimZuTor, Weiterleitung amlocalhost:PORTheimüberTorZu desktop:22.

  2. Verbinden vonheimZuDesktop-Computerüber den bestehenden TunnelTor, Weiterleitung localhost:1521amheimüberDesktop-ComputerZu dbserver:1521.

home$ ssh -fNLHAFEN:desktop:22 Tor
home$ ssh -fNL 1521:dbserver:1521 -o "HostkeyAlias=desktop" -PHAFENlokaler Host
DB-Verbindung kann jetzt hergestellt werden

(Die -fNOptionen weisen SSH an, eine Verbindung herzustellen, Tunnel aufzubauen und dann im Hintergrund weiterzulaufen.)


Die zweite Methode ist nützlicher, da Sie damit erreichen könnenDesktop-Computerdirekt vonheim(unter Verwendung des laufenden Tunnels) für alle Arten von Verbindungen.

verwandte Informationen