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

Какая часть пересылки SSH устанавливает SSH_AUTH_SOCK?

Я пытаюсь настроить пересылку агента SSH с моего Mac на сервер Debian. На моем Mac я подтвердил, что у меня есть:

Вход на удаленный сервер без пароля работает нормально. Однако ни одна из моих личностей там недоступна, а SSH_AUTH_SOCK пуст.

Я хотел бы понять, как это настраивается в удаленной среде, и что мне не хватает, чтобы это работало?

Обновить:

Мой сервер настроен с AllowAgentForwarding=yes в sshd_config и ForwardAgent=yes в ssh_config.

Я нашел несколько руководств, в которых предлагается запустить eval ``ssh-agent, поэтому я попробовал, но подозреваю, что это предназначено для клиентской машины. Это установило SSH_AUTH_SOCK, когда я запустил его на своем сервере, но он, похоже, не подключается обратно к клиентскому агенту, и он говорит: «У агента нет удостоверений».

На моем Mac с OS 10.6.x я обнаружил, что переадресация агента не работала, пока я не добавил свой ключ в связку ключей Apple со следующим:

ssh-add -K ~/.ssh/id_rsa 

где ~/.ssh/id_rsa содержит мой закрытый ключ ssh

У меня есть запись в блоге о настройка записей конфигурации хоста ssh для упрощения командной строки ssh это может быть интересно

Сервер также должен разрешить пересылку агента.

У клиента, на котором работает агент, должна быть включена пересылка агента. Не сервер.

Никогда не включайте его глобально, а только для каждого хоста в ~ / .ssh / config:

Host myserver.foo.local
ForwardAgent yes

Или используйте параметр -A при подключении:

ssh -A myserver.foo.local