Я пытаюсь настроить пересылку агента SSH с моего Mac на сервер Debian. На моем Mac я подтвердил, что у меня есть:
SSH_AUTH_SOCK
существуютssh-add -l
показывает мою личность./ssh/config
имеет настройки для включения ForwardAgentВход на удаленный сервер без пароля работает нормально. Однако ни одна из моих личностей там недоступна, а 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