Я нахожусь в той же ситуации, что и человек, отправивший Другой вопрос, Я пытаюсь туннелировать ssh-соединения через сервер шлюза вместо того, чтобы использовать ssh в шлюз и вручную снова ssh на целевой сервер оттуда. Я пытаюсь настроить решение, указанное в принятом ответе, ~/.ssh/config
это включает:
host foo
User webby
ProxyCommand ssh a nc -w 3 %h %p
host a
User johndoe
Однако когда я пытаюсь ssh foo
, мое соединение остается активным в течение 3 секунд, а затем умирает с Write failed: Broken pipe
ошибка. Удаление -w 3
вариант решает проблему. Какова цель этого -w 3
в исходном решении, и почему это вызывает Broken pipe
ошибка при использовании? Что плохого в том, чтобы его пропустить?
Какова цель этого
-w 3
в исходном решении
Не оставляет сиротами nc
процессы, запущенные на удаленном хосте, когда ssh
сессия закрыта неправильно.
и почему это вызывает
Broken pipe
ошибка при использовании?
Попробуйте увеличить тайм-аут на nc
до 90 и установка ServerAliveInterval
до 30, чтобы увидеть, исчезнет ли ваша проблема:
host foo
User webby
ServerAliveInterval 30
ProxyCommand ssh a nc -w 90 %h %p