Ssh к целевому узлу через шлюз

Имейте HostA, который расположился во внутренней подсети, которая была видна только от хоста gatway. Затем я даю команду как:

%ssh -t -o ProxyCommand='ssh GateWayUser@GatWayHost nc HostA 22' HostAUser@HostA ls -la

Это хорошо работает.

Но если я попробовал его ~/.ssh/config, это не работает:

% ssh -t HostAUser@HostA ls -la
ssh: connect to host <HostA IP here> port 22: Connection timed out

~/.ssh/config похож на это:

Host TargetHost
HostName It's IP
User It's User

Host GatWayHost 
HostName It's IP
User It's User

ProxyCommand ssh GateWayUser@GatWayHost nc HostA 22

Какие-либо предложения, как заставить его работать?

1
задан 28 June 2016 в 19:19

1 ответ

Вы делаете это наоборот:

Host TargetHost
  HostName It's IP
  User It's User
  ProxyCommand ssh GateWayUser@GatWayHost nc HostA 22

Host GatWayHost 
  HostName It's IP
  User It's User

Вы помещаете команду прокси в блок соответствия соответствующего целевого узла и не наоборот. Но можно значительно упростить команду до:

ProxyCommand ssh GatWayHost nc %h %p

Или просто используют внутреннюю передачу io:

ProxyCommand ssh -W %h:%p GatWayHost
0
ответ дан 29 September 2019 в 01:00

Другие вопросы по тегам:

Похожие вопросы: