Hola que tal, en esta ocasión se muestra
una conexión SSH desde macOS, pero por configuración el servicio que tiene por
defecto en las sesiones de ssh como cliente, no soporta métodos de encriptación
que tengan una seguridad baja.
El siguiente ejemplo muestra una conexión desde un cliente terminal de macbook a
un Access Point Cisco con el comando:
ssh
-l <usuario> <dirección IP>
ó
ssh
<usuario>@<direccion IP>
En el caso del access point la dirección
IP que tiene es 192.168.0.253 y esta creado el usuario “pavel” para este
escenario. Por lo que el comando que usaremos será el siguiente:
ssh -l pavel 192.168.0.253
Pero aparece el siguiente error y no
permite la conexión.

Analizando el output se puede observar
que la negociación no está habilitada entre la terminal de macbook y el Access
point, debido a que el intercambio de llaves no coincide, entonces existen dos
opciones, actualizar la configuración de SSH en el access point, para soportar
las llaves que utiliza la macbook, que hasta este momento no se sabe cuáles
son. O se puede utilizar las llavez que aparecen en el error. por ejemplo:
Según el mensaje que arroja al intentar
la conexión, el access point es compatible con:
Diffie-hellman-group-exchange-sha1
Diffie-hellman-group14-sha1
Diffie-hellman-group1-sha1
Buscando un poco en la red, me encontré
con esta línea de comando que se puede utilizar para definir en la terminal cual
llave queremos utilizar para establecer la sesión de SSH.
ssh
-oKexAlgorithms=+diffie-hellman-group1-sha1 pavel@192.168.0.253
Después de poner este comando en la
terminal aparece otro mensaje diferente al anterior

Ahora volviendo a analizar el output,
indica que tampoco coincide el método de cifrado, y se aprecia que el access
point soporta los métodos:
aes128-cdc
3des-cdc
aes192-cdc
aes256-cdc
Por lo que ahora se debe definir que
metodo de cifrado se quiere utilizar para establecer la sesión con el dispositivo
remoto.
Si se teclea en la terminal “ssh –help” ,
brinda la ayuda rápida de las opciones que soporta el comando ssh en esta
terminal.
La opción de “-c” es para especificar el
cifrado que vamos a utilizar.
Entonces se procede a completar el
comando anterior con la opción “-c aes128-cbc” que es uno de los cifrados que
utiliza el access point.
ssh
-oKexAlgorithms=+diffie-hellman-group1-sha1 -c aes128-cbc pavel@192.168.0.253
Después de eso la terminal se conecta
exitosamente al access point.
Entonces, de esta manera desde la misma
terminal y sin modificar la configuración del archivo “ssh_config” nos vamos a
poder conectar a los diferentes dispositivos por SSH que no soporten el mismo
intercambio de llaves declarado por default en macbook y tampoco el mismo
cifrado.
Yo creo que eso sería todo, bye!