Заметка: из раздела по подписке
Сегодня на работе я хотел написать скрипт или действия, через которые я смогу оперативно снимать резервную копию настроенного конфигурационного файла на коммутаторе Cisco WS-C2960S-24TS-L
, то в процессе подключения с Ubuntu 20.04 Server
через встроенный клиент ssh
получил отворот поворот, странно то что с Windows 10 Pro (Version 10.0.18363.592)
через клиента Putty (Version 0.73)
успешно подключаюсь.
Текущая версия установленного клиента SSH
на Ubuntu 20.04 Server:
ekzorchik@srv-backup:~$ ssh -V OpenSSH_8.2p1 Ubuntu-4ubuntu0.4, OpenSSL 1.1.1f 31 Mar 2020 Текущая версия моего коммутатора Cisco WS-C2960S-24TS-L : Switch Ports Model SW Version SW Image ------ ----- ----- ---------- ---------- * 1 28 WS-C2960S-24TS-L 15.2(2)E9 C2960S-UNIVERSALK9-M
При подключении к WS-C2960S-24TS-L
по SSH
с Ubuntu 20.04 Server
ekzorchik@srv-backup:~$ ssh -l ollo sw002.polygon.local Unable to negotiate with 192.168.3.74 port 22: no matching key exchange method found. Their offer: diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 ekzorchik@srv-backup:~$
Вот те на.
Шаг №1:
Победил я данную ошибку (no matching key exchange method found)
путем явного указания используемого алгоритма Diffie Hellman
при подключении по SSH:
ekzorchik@srv-backup:~$ ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -l ollo sw002.polygon.local -p 22 The authenticity of host 'sw002.polygon.local (192.168.3.74)' can't be established. RSA key fingerprint is SHA256:wy/p8h42hJts4MUe/Xa9cTX+dqx2pkoPrXLW4qJXJko. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added 'sw002.polygon.local,192.168.3.74' (RSA) to the list of known hosts. Password: указываю пароль на подключение к своей Cisco sw002>
Шаг №2:
Проверяем какие алгоритмы взаимодействия с удаленными хостами поддерживает встроенный SSH
клиент:
ekzorchik@srv-backup:~$ ssh -Q cipher 3des-cbc aes128-cbc aes192-cbc aes256-cbc rijndael-cbc@lysator.liu.se aes128-ctr aes192-ctr aes256-ctr aes128-gcm@openssh.com aes256-gcm@openssh.com chacha20-poly1305@openssh.com ekzorchik@srv-backup:~$
в выводе имеется алгоритм aes256-cbc
и если у Вас при Шаге №1
все же будет ошибка: "Unable to negotiate with host port 22: no matching cipher found"
, то строка подключения будет такой:
ekzorchik@srv-backup:~$ ssh -c aes256-cbc -oKexAlgorithms=+diffie-hellman-group1-sha1 -l ollo sw002.polygon.local -p 22 Password: sw002>
На заметку: и с учетом этого в Шаг №3
нужно будет указать алгоритм, который использовать при подключении.
Шаг №3:
Если планируется часто подключаться к оборудованию Cisco
, то есть смысл не каждый раз указывать такую длинную строку на подключение, а задействовать единожды настроенное описание в конфигурационном файле /etc/ssh/ssh_config:
ekzorchik@srv-backup:~$ sudo nano /etc/ssh/ssh_config Host sw002.amilux.local Port 22 PasswordAuthentication yes Ciphers aes256-cbc KexAlgorithms +diffie-hellman-group1-sha1 ekzorchik@srv-backup:~$ ssh -l ollo sw002.amilux.local Password: sw002>
Итого, я составил себе пошаговую заметку как подключаться к оборудованию WS-C2960S-24TS-L
с Ubuntu 20.04 Server
и могу смело приступить к намеченному составлению скрипта по резервному копированию. На этом заметка завершена, с уважением автор блога Олло Александр aka ekzorchik.