Я столкнулся с интересной проблемой уже несколько недель. К части нашего флота можно добраться только через прыжковый узел.
Раньше у меня не было проблем с входом в jump-host с моей рабочей станции с помощью ssh -A и поддержанием сеанса в течение длительных периодов времени [да, я знаю, что это плохая практика, здесь не для лекции о грязной привычке = }], и оттуда подключитесь к другим машинам без ввода пароля, как и ожидалось.
Теперь то, что время от времени заходить в мою сессию с активным сеансом связи с хостом перехода, дает мне
Permission denied (publickey)
Если я отключусь и без перезапуска агента снова подключусь к хосту перехода, все будет работать как раньше.
Как мне диагностировать, что там происходит?
Дополнительная информация: моя рабочая станция - Ubuntu 16.04, узел перехода - 14.04, недавно обновленный с 12.04.
При использовании переадресации агента ssh
фактически перенаправляет сокет UNIX в каталог в /tmp
и наборы SSH_AUTH_SOCK
указать на это.
Фактически это означает, что только новая удаленная оболочка унаследует SSH_AUTH_SOCK
. Более старые сеансы будут продолжать указывать на сокет, которого больше не существует. Вы могли бы просто export
это снова, если вы не хотите открывать новую оболочку