
Obtengo claves diferentes cada vez que ejecuto ssh-keyscan -H some.hostname.example
. ¿Porqué es eso? ¿El servidor cambia continuamente las claves?
Las claves que obtengo de una ejecución parecen funcionar incluso después de una ejecución posterior, porque no recibo ninguna advertencia cuando entro ssh
al servidor, a pesar de que guardé un conjunto de claves en ~/.ssh/known_hosts
.
Editar: me equivoqué, las claves no cambian, sin embargo, la primera columna (con el nombre del host) cambia. Está en el formulario |1|<something base64>|<something else base64>
. No estoy muy seguro de qué está codificado en base64, pero parece ser binario.
Respuesta1
La parte del nombre de host tiene hash. el mismo nombre/ip puede tener hashes diferentes (recuerde, usó ssh-keycheck -H). Entonces este es un comportamiento normal.
Respuesta2
La respuesta aquíhttps://security.stackexchange.com/questions/56268/ssh-benefits-of-using-hashed-known-hostsexplica en detalle cómo se realiza el hash.
Lo esencial es que incluye una "sal" (datos adicionales aleatorios), para no tener el mismo hash y facilitar el cálculo previo de los hashes para muchos textos de entrada. La sal es aleatoria, pero se muestra, no está procesada.