2013-08-11 3 views
1

Я пытаюсь подключиться к терминалу с помощью ключей ssh, но я все время спрашиваю о пароле. Я пробовал с и без опции user_dir. У кого-нибудь есть идеи?Модуль Erlang ssh не распознает мои ключи ssh

:ssh.start 
{:ok, S} = :ssh.connect('some.host.com', 22, 
         [ 
         {:silently_accept_hosts, true}, 
         {:user_dir, '/Users/nan/.ssh'} 
         ]) 
#... 
:ssh.close(S) 
:ssh.stop 
+0

Можете ли вы подключиться к хосту с помощью открытого клиента ssh без ввода пароля? – hdima

+0

Да, нет проблем с этим. например. ssh [email protected] – nan

+0

Вы пытались передать опцию 'user'? – hdima

ответ

1

Проверьте содержимое своего файла ~/.ssh/config. Я считаю, что модуль Erlang ищет файлы id_rsa или id_dsa непосредственно в каталоге. У вас может быть запись в вашем файле конфигурации для some.host.com, который по умолчанию относится к разному расположению ключа или другому имени пользователя. Из-за этого ведение журнала с использованием командной строки работает, и он не работает, когда модуль пытается установить соединение.

Также проверьте, какие ключи были загружены в ваш сеанс агента (ssh-add -L). Возможно, вы используете другой ключ для этого конкретного хоста, чем вы подозреваете.

Смежные вопросы