Настройка шлюза по умолчанию в ssh_config

Настройка шлюза по умолчанию в ssh_config

Я хотел бы узнать, есть ли способ назначить шлюз ssh по умолчанию для имени хоста, так что всякий раз, когда вы пытаетесь подключиться к имени хоста по ssh, он будет использовать шлюз для доступа к хосту. В идеале это должно быть сделано в ssh_config

например: клиент C пытается достичь цели T с помощью

ssh T

Единственный способ установить это соединение — через шлюз GW.

ssh -tA GW ssh T

EDIT: Я забыл упомянуть, что у вас могут быть разные шлюзы, которые будут достигать разных хостов.

EDIT: Я попробовал использовать конфигурацию ssh:

Host my-target-host
ProxyCommand ssh -tA GW ssh %h

Но затем я получаю сообщение «Псевдотерминал не будет выделен, поскольку stdin не является терминалом».

EDIT: Хорошо, я понял :-) Правильная конфигурация выглядит так:

Host my-target-host
ProxyCommand ssh my-gateway-host exec nc %h %p

Хотя не совсем понимаю, почему это работает...

решение1

После некоторых экспериментов и поисков я обнаружил, что это работает (по причинам, которые мне не понятны):

В вашем ssh_config:

Host my-target-host
ProxyCommand ssh my-gateway-host exec nc %h %p

Связанный контент