Bequem per SSH auf interne Hosts zugreifen?

Bequem per SSH auf interne Hosts zugreifen?

Ich habe kürzlich entdeckt ~/.ssh/config, dass ich mit viele Tastenanschläge sparen und lange Befehlszeilen automatisieren kann, indem ich viele Vorgabewerte für jeden Host spezifiziere. Nachdem ich nun festgestellt habe, wie leistungsfähig das Tool sein kann, frage ich mich, ob es für einen anderen meiner Anwendungsfälle geeignet ist.

Ich habe Zugriff auf zwei Hosts bastionund wikispy. Bastion hat eine externe IP und wikispyist nur von der internen aus sichtbar. Das bedeutet, dass wikispyich normalerweise, um eine Verbindung zu herzustellen, zuerst per SSH eine Verbindung zu herstellen bastionund dann aufrufen muss ssh wikispy. Dinge wie die Portweiterleitung werden auf diese Weise natürlich komplizierter und das ist etwas, das ich vermeiden möchte.

Dies führt zu einer Frage: Kann ich irgendwie ~/.ssh/configeinen Eintrag erstellen, der angibt, „wenn der Benutzer einen Host mit der Bezeichnung anfordert wikispy, tatsächlich eine Verbindung zu herstellen bastionund dann aufrufen ssh wikispy“? Wäre es möglich, transparent zu arbeiten, sodass ich Dinge wie aufrufen ssh wikispy -L 9999:localhost:9999und bastionden Port so weiterleiten könnte, dass ich von innerhalb von darauf zugreifen könnte wikispy?

Antwort1

Hier scheint sich eine Kombination aus ProxyCommandund ncals nützlich zu erweisen. Hier ist eine Lösung – fügen Sie Folgendes zu hinzu ~/.ssh/config:

Host bastion
HostName EXTERNAL_IP
User d

Host wikispy
HostName INTERNAL_IP
User d
ProxyCommand ssh bastion nc -q0 %h 22

EntsprechendDieser Artikelkönnen Sie auf diese Weise mehr als eine Verschachtelungsebene erhalten.

verwandte Informationen