Ich würde gerne wissen, ob es eine Möglichkeit gibt, einem Hostnamen ein Standard-SSH-Gateway zuzuweisen, sodass bei jedem Versuch, per SSH auf den Hostnamen zuzugreifen, das Gateway verwendet wird, um den Host zu erreichen. Idealerweise sollte dies in der ssh_config erfolgen.
Beispiel: Kunde C versucht, Ziel T zu erreichen, indem er
ssh T
Die einzige Möglichkeit, diese Verbindung herzustellen, ist über das Gateway GW
ssh -tA GW ssh T
EDIT: Ich habe vergessen zu erwähnen, dass man verschiedene Gateways haben kann, die verschiedene Hosts erreichen
BEARBEITEN: Ich habe versucht, die SSH-Konfiguration zu verwenden:
Host my-target-host
ProxyCommand ssh -tA GW ssh %h
Aber dann bekomme ich "Pseudo-Terminal wird nicht zugewiesen, da stdin kein Terminal ist"
EDIT: Okay, ich habe es herausgefunden :-) Die richtige Konfiguration sieht folgendermaßen aus:
Host my-target-host
ProxyCommand ssh my-gateway-host exec nc %h %p
Ich bin mir jedoch nicht ganz sicher, warum das funktioniert ...
Antwort1
Nach einigem Herumprobieren und Suchen habe ich festgestellt, dass dies funktioniert (aus mir unverständlichen Gründen):
In Ihrer ssh_config:
Host my-target-host
ProxyCommand ssh my-gateway-host exec nc %h %p