GNU/Linux >> Znalost Linux >  >> Linux

Předat SSH přes SSH tunel

Řešení 1:

Váš problém je ve spojení posluchače s localhost:22; už to poslouchá sshd. Tunelování ssh připojení přes ssh připojení je zcela legální a dělám to pořád, ale musíte vybrat nepoužívané porty pro vaše přesměrovací posluchače.

Zkuste

me% ssh [email protected] -L 2201:192.168.25.100:22

pak

me% ssh localhost -p 2201

Měli byste skončit na serveru B (pokud mi již něco není vázáno:2201, v takovém případě vyberte jiný port).

Řešení 2:

Pro ssh do interního počítače přes proxy nemusíte používat přesměrování portů ssh. Funkci ssh můžete použít k provedení příkazu na prvním serveru, ke kterému se připojíte, abyste mohli použít ssh na 3. počítač.

ssh -t [email protected] ssh [email protected]

-t volba nutí ssh k přidělení pseudo-tty, takže můžete spustit interaktivní příkaz.

To může fungovat i s ssh klíči. Pokud máte svůj soukromý a veřejný klíč na počítači A a svůj veřejný klíč v souborech autorizovaných klíčů na počítačích B a C, můžete použít -A možnost předat připojení ověřovacího agenta.

Řešení 3:

Od OpenSSH 7.3 (konec roku 2016) je nejjednodušším způsobem nastavení ProxyJump. Ve vašem ~/.ssh/config :

Host B
  ProxyJump A

Nebo na příkazovém řádku , -J B .

Řešení 4:

Použil jsem jiné řešení. Použil jsem ProxyCommand možnost (zde v ~/.ssh/config ):

Host myinsidehost1 myinsidehost2 myinsidehost3
ProxyCommand ssh externalhost ssh %h sshd -i

Toto nenastavuje žádný tunel mezi porty, místo toho tuneluje ssh pomocí standardního stdin/out. Tato metoda má nevýhodu, že ve skutečnosti existují tři připojení ssh k ověření. Ale pro připojení k internímu hostiteli stačí napsat:

ssh myinsidehost2

...takže se nemusíte starat o výběr žádné IP pro tento tunel.

Řešení 5:

podle manuálové stránky ssh je správnou metodou ProxyCommand

syntaxe je:

ProxyCommand ssh -W %h:%p [email protected] 2> /dev/null

Linux
  1. Ssh – tunelový provoz přes jiný stroj přes Ssh?

  2. Ssh – Scp přes více hostitelů?

  3. Připojujete Ssh tunel při restartu?

  1. Jak směrovat internet přes Ssh tunel?

  2. Jak mohu tunelovat veškerý síťový provoz přes SSH?

  3. Jak nastavit ssh tunel pro předávání ssh?

  1. SSH - Jak zahrnout příkaz -t do souboru ~/.ssh/config

  2. SSH z A přes B do C pomocí soukromého klíče na B

  3. přidání hesla do .ssh/config