вторник, 20 мая 2014 г.

Обрыв подключения по ssh после обновления

 После очередного обновления, начались проблемы с подключениями по ssh к linux машинам и cisco, и при этом логики я не увидел, к одним сетям подключаюсь успешно к другим обрыв, при этом проанализировав трафик на удаленной машине с помощью tcpdump видно что соединение происходит. Еще следует отметить что putty успешно подключается на все проблемное оборудование. 


Для выявления затыка, который нам не дает жить я использовал ключ ssh -vvv username@host, на выходе мы получаем вот что:
  1. debug2: kex_parse_kexinit: first_kex_follows 0
  2. debug2: kex_parse_kexinit: reserved 0
  3. debug2: mac_setup: setup hmac-md5
  4. debug1: kex: server->client aes128-ctr hmac-md5 none
  5. debug2: mac_setup: setup hmac-md5
  6. debug1: kex: client->server aes128-ctr hmac-md5 none
  7. debug1: sending SSH2_MSG_KEX_ECDH_INIT
  8. debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
полный выхлоп дебаггера http://pastebin.com
Как гугл нам подсказывает и иногда  просто необходимо корректно выставить настройки Ciphers, то есть раскомментировать строчку в /etc/ssh/ssh_config

  1. Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
Мне это не помогло но зато удалось методом экспериментов и чтения манов выявить что это проблема в спецификации umac-64@openssh.com, на сколько я понял, разработчики в новых версиях ssh чет не доделали с поддержкой umac-64. и так раскомментируем строку: 

  1. MACs hmac-md5,hmac-sha1,hmac-ripemd160
И удаляем из перечисленных спецификаций umac-64@openssh.com. На линуксе все завелось, остались проблемы с цисками. Ужаснувшись поиска проблемной спецификации я решил откатить версию OpenSSH.

Рабочей оказалась версия openssh-6.4, 6.5-6.6 проблемные. На примере Arch Linux делаем следующее:

  1. sudo pacman -U http://seblu.net/a/arm/2014/01/01/core/os/x86_64/openssh-6.4p1-1-x86_64.pkg.tar.xz
  2. echo 'IgnorePkg = openssh' >> /etc/pacman.conf
Этим мы откатываемся к версии 6,4 а также добавляем в исключения обновлений openssh.

UPD, Опять столкнулся с ошибкой, помог следующий конфиг, в конец файла  /etc/ssh/ssh_config

Host *
SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication yes
GSSAPIDelegateCredentials no
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
HostKeyAlgorithms ssh-rsa,ssh-dss
MACs hmac-md5,hmac-sha1,hmac-ripemd160


Комментариев нет:

Отправить комментарий

Установка последнего стабильного ядра в RHEL-7, SL-7 or CentOS-7

В этом кратком руководстве, мы покажем вам, как  модернизировать ядро своего CentOS 7 до последней стабильной версии. Я собираюсь использов...