Huella digital SHA256 ssh proporcionada por el cliente, pero solo huella digital md5 conocida para el servidor

Pregunta:

Al conectarse a un servidor nuevo / desconocido (con OpenSSH reciente), por ejemplo:

ssh example.com

Obtienes la huella digital como a continuación:

The authenticity of host 'example.org (192.0.2.42)' can't be established.
RSA key fingerprint is SHA256:7KMZvJiITZ+HbOyqjNPV5AeC5As2GSZES5baxy1NIe4.
Are you sure you want to continue connecting (yes/no)?

Sin embargo, las huellas dactilares generalmente se dan para el servidor de esta forma:

f6:fc:1c:03:17:5f:67:4f:1f:0b:50:5a:9f:f9:30:e5

¿Cómo puedo verificar la autenticidad (sin molestar a los administradores del servidor para que proporcionen una huella digital SHA256)?

Respuesta:

Anteriormente, la huella dactilar se proporcionaba como un hash md5 hexadecimal. A partir de OpenSSH 6.8, la huella digital ahora se muestra como base64 SHA256 (de forma predeterminada). No puedes compararlos directamente.

También agregaron una nueva opción de configuración FingerprintHash . Puedes poner

FingerprintHash md5

en su ~/.ssh/config para volver al valor predeterminado anterior ( menos seguro ) o simplemente use esta opción para un solo uso:

ssh -o FingerprintHash=md5 example.org

que daría la huella digital como

MD5:f6:fc:1c:03:17:5f:67:4f:1f:0b:50:5a:9f:f9:30:e5

Es de esperar que los administradores del servidor proporcionen ambos tipos de huellas digitales en un futuro próximo.

EDITAR:

Como se indica en los foros de Arch Linux , también hay una tercera opción:

Host example.org
    FingerprintHash md5

EDITAR:

Puede generar el hash de una clave arbitraria como se indica en el libro de cocina de OpenSSH :

Recuperar la clave:

  • descargue la clave con ssh-keyscan example.org > key.pub
  • o: busque las claves en el servidor en /etc/ssh

Genera el hash:

  • asegúrese de tener solo una línea / tipo, así que elimine todos los demás en key.pub o ejecute ssh-keyscan -t rsa example.org > key.pub
  • ssh-keygen -l -f key.pub (hash predeterminado, según la versión de OpenSSH)
  • ssh-keygen -l -f key.pub -E md5 (md5 en OpenSSH actual)
  • awk '{print $2}' ssh_host_rsa_key.pub | base64 -d | sha256sum -b | awk '{print $1}' | xxd -r -p | base64 (sha256 en OpenSSH antiguo)
  • (Es posible que deba comenzar la línea con awk '{print $3}' para versiones más nuevas de ssh-keyscan porque el formato cambió)

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım