2015-07-02 2 views
0

Я пытаюсь использовать модуль erlang ssh для подключения к серверу openssh (версия: SSH-2.0-OpenSSH_6.7p1 Debian-6). OpenSSH сервер использует конфигурацию по умолчаниюНе удается подключиться к openssh с помощью otp ssh module

Doing следующее:

ssh:connect(Server, 22, [MyFancyOptions]) 

Дает:

Selection of key exchange algorithm failed 

Действительно, наблюдая за Wireshark я увидел, что алгоритмы обмена ключами, предложенный Erlang клиентом:

diffie-hellman-group1-sha1 

и сервер:

[email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1 

не совпадают ...

Вопрос: Есть ли способ, чтобы подключиться к серверу SSH в Erlang?

PS. Да, я видел

%% TODO: diffie-hellman-group14-sha1 should also be supported. 
%% Maybe check more things ... 
verify_algorithm(#alg{kex = 'diffie-hellman-group1-sha1'}) -> 

Но не говори мне, что святой Erlang не может справиться с современным SSH ...

ответ

0

Да, это выглядит, как если бы вам нужно увеличить свой сервер, чтобы предложить дополнительные KexAlgorithms, так что-то например:

KexAlgorithms [email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1

НО ... Сделав это, я ничего не добьюсь. Я вижу ошибку в журналах:

sshd[8026]: dispatch_protocol_error: type 30 seq 7

Так что, похоже модуль SSH Erlang имеет некоторые существенные проблемы с современной SSH ...

0

Erlang SSH клиент в OTP 15 будет работать с OpenSSH-6.7 сервер, если настроить OpenSSH для openssh6.0 по умолчанию в/и т.д./SSH/sshd_config, как это:

Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour 
KexAlgorithms ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 

Erlang SSH-клиент поддерживает только шифры AES128-CBC, 3DES-CBC, которые не включены по умолчанию в OpenSSH-6.7, на по крайней мере, не в пакете opensbian openssh.

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