tirar < Módulos incorporados de 2048 bits
En el servidor: eche un vistazo a su sshd_config
y elimine el diffie-hellman-group1-sha1
si aparece en la sección KexAlgorithms
.
Y reinicie SSHD.
Comprueba con Nmap
¿cómo puedo probar si eso es lo suficientemente bueno?
Obtenga Nmap y ejecute el secuencia de comandos 'ssh2-enum-algos' contra el servidor SSH .
El diffie-hellman-group1-sha1
no debe aparecer. Solo tiene 1024 bits.
tirar < Módulos personalizados de 2048 bits
En el servidor: deseche los módulos de DH menos de 2048 bits.
Aquí hay algo de código. Se adaptó de un Pregunta de ServerFault :
awk '$5 >= 2048' /etc/ssh/moduli > /etc/ssh/moduli.strong && \
mv /etc/ssh/moduli.strong /etc/ssh/moduli
Y reinicie SSHD.
Consulte con la herramienta SSH-Débil-DH
Obtenga, compile y ejecute la herramienta de identificación de grupo Diffie-Hellman débil de SSH .
La herramienta utiliza un cliente OpenSSH parcheado que intenta varias veces conectarse al servidor utilizando diferentes parámetros de grupo DH para el protocolo de intercambio de claves DH, por lo que determina si el servidor tiene habilitados grupos DH débiles. GDSSecurity explica cómo funciona la herramienta en su blog .
Consulte con WireShark
Realmente no sé cómo verificar esto.
Algunas ideas a continuación:
Escuche el Apretón de manos en el cliente con WireShark.
Filtrar por ssh
. Encuentra la línea Server: Diffie-Hellman Key Exchange Reply, New Keys
.
O aún más rápido: filtre directamente para ssh.message_code == 31
.
Mira dentro de la sección SSH Protocol | SSH Version 2 | Key Exchange | KEX DH host key
. Hay un texto ASCII legible por humanos que le dirá qué mecanismo de intercambio de claves ha seleccionado el servidor. Si es algo que comienza con ecdsa-
, entonces estás a salvo de LogJam. De lo contrario tendrás que contar bytes nuevamente. Y tendrá que haber al menos 256. (256 x 8 bits == 2048 bits. Eso es lo que queremos como longitud de clave mínima).
Lectura adicional: