Назад | Перейти на главную страницу

перенаправление ключей pssh и ssh-agent через узел перехода

Я пытаюсь подключиться к нескольким хостам, используя pssh в сочетании с хостом перехода и пересылкой ключей ssh-agent.

К сожалению, это не всегда удается, но с разными хостами. Это всего лишь пример, который в следующий раз будет выглядеть иначе:

 ~> pssh -h /tmp/hostfile -o /tmp/log  -e /tmp/error/ -v uname -a
[1] 13:51:18 [FAILURE]  host1 Exited with error code 255
[2] 13:51:19 [SUCCESS]  host2 
[3] 13:51:19 [SUCCESS]  host3 
[4] 13:51:19 [SUCCESS]  host4
[5] 13:51:19 [SUCCESS]  host5
[6] 13:51:19 [SUCCESS]  host6
[7] 13:51:19 [SUCCESS]  host7
….
[16] 13:51:19 [SUCCESS] host16

Когда я смотрю повнимательнее, я получаю

ssh_exchange_identification: Connection closed by remote host
ssh_exchange_identification: Connection closed by remote host

на хосте, который не удалось. Это похоже на то, что перенаправление ключей ssh-agent через узел перехода не сработало в этом конкретном сценарии.

Внутри моего ~ .ssh / config это выглядит так:

ForwardAgent yes

Host *.tld.foo
    User frlan
    ProxyCommand ssh tld-jump-host nc %h %p

Host tld-jump-host
    HostName myhost.example.com
    User frlan
    ProxyCommand none

Обычно это работает. Теперь мне интересно, почему, начиная примерно с 15 хостов, иногда ключ не пересылается, и я могу обновить свою конфигурацию, чтобы этого не произошло.

Я пытаюсь подключиться к нескольким хостам, используя pssh в сочетании с хостом перехода и пересылкой ключей ssh-agent.

Для подключений с использованием ProxyCommand тебе не нужно ничего ssh-agent пересылка. Вся аутентификация выполняется прямо с вашего компьютера.

Страница руководства для ssh_config говорит

Для каждого параметра будет использоваться первое полученное значение.

Следовательно Host tld-jump-host блок должен быть до Host *.tld.foo блок, особенно если поле прыжка имеет тот же tld, что и хосты за ним.

Если вы подключаетесь ко многим хостам за этим блоком перехода, вы можете активировать ограничение на количество подключений, и подключения будут случайным образом отклоняться. Вы можете попытаться избежать этого, увеличив ограничение скорости соединения на сервере jumpbox (MaxStartups вариант в sshd_config) или мультиплексируйте подключения к окну перехода, создав каталог ~/.ssh/cm/ и добавив следующее в блок jumbox в ssh_config:

ControlMaster auto
ControlPath ~/.ssh/cm/%C
ControlPersist 5m