El protocolo SSH , como cualquier otro, progresa, se actualizan los mecanismos de hashing y cifrado acorde a nuevas vulnerabilidades o debilidades inherentes que terminan siendo explotables.

Por eso determinadas conexiones alertan de que los clientes no pueden negociar los protocolos propuestos por los servidores. Todas estas discrepancias , pueden solucionarse para la conexión instantánea que queremos realizar, o podemos hacerlas persistentes. En este ejemplo, la máquina 192.168.1.201, al intentar conectarnos a ella, falla porque el cliente no puede negociar ya el algoritmo DSA de clave pública:

1

Concretamente esto sucede desde la versión 7.0 de OpenSSH , y no es malo, simplemente nos indica que ssh-dss está obsoleto, y aunque lo ofrece el servidor, no deberíamos usarlo.

Como no siempre la actualizción del servidor es factible (entornos de OT , máquinas no actualizables, firmwares antiguos, etc…), es muy probable que aún así debamos conectarmos en remoto, y SSH , aunque con algoritmos obsoletos, al menos no se mueve por la red en texto plano.

Por lo tanto si quisiéramos completar esta conexión, deberíamos incluirlo al iniciarla:

2

Este nuevo parámetro va a ser necesario cada vez que nos conectemos a la máquina, salvo que añadamos DSA de forma persistente a la lista de algoritmos permitidos, o que deben ser utilizados al conectarse a ciertas máquinas. En este caso, lo haremos persistente sólo para 192.168.1.201:

3

Editanto el fichero ~/.ssh/config , podemos activar o desactivar las opciones que consideremos oportunas, de forma independiente para cada host.

4

Y no necesitaremos acordarnos de cada caso concreto.

Un modificador bastante útil que tenemos disponible es -G , que nos permite consultar de forma pormenorizada todos los parámetros ofrecidos por el servidor al que queremos conectarnos:

5