Saltar al contenido

¿Cuáles son las mejores prácticas de ssh-keygen?

Este enunciado ha sido analizado por nuestros expertos para que tengas la garantía de la veracidad de nuestra esta noticia.

Solución:

Recomiendo el artículo Secure Secure Shell, que sugiere:

ssh-keygen -t ed25519 -a 100

Ed25519 es un esquema EdDSA con muy pequeño (tamaño fijo) keys, introducido en OpenSSH 6.5 (2014-01-30). Estos tienen una complejidad similar a RSA a 4096 bits gracias a la criptografía de curva elíptica (ECC). los -a 100 opción especifica 100 rondas de key derivaciones, haciendo su keyLa contraseña de es más difícil de usar por fuerza bruta.

Sin embargo, Ed25519 es bastante nuevo key algoritmo (la popularidad de Curve25519 se disparó solo cuando se supuso que otros estándares se habían diluido) y su adopción aún no es universal. Se dieron grandes pasos en 2018, por lo que casi llegamos, pero en sistemas más antiguos o para servidores más antiguos, puede generar un RSA de complejidad similar. key con 4096 bytes:

ssh-keygen -t rsa -b 4096 -o -a 100

(Los -o La opción también requiere OpenSSH 6.5 y es la predeterminada a partir de v7.8, por lo que ya no está presente en el ssh-keygen página de manual Esto dicta el uso de un nuevo formato OpenSSH para almacenar el key en lugar del valor predeterminado anterior, PEM. Ed25519 requiere este nuevo formato, por lo que no necesitamos indicarlo explícitamente dado -t ed25519. Una página de manual anterior decía que “el nuevo formato ha aumentado la resistencia al descifrado de contraseñas por fuerza bruta”. Vea esta respuesta para más detalles).

No considere el otro nuevo algoritmo ECC llamado ECDSA. Se considera sospechoso (tiene debilidades conocidas y dado que el gobierno de EE. UU. ha estado involucrado en su desarrollo, puede estar comprometido más allá de eso). Ed25519 se desarrolló sin ninguna participación gubernamental conocida.

Manténgase alejado de DSA (“ssh-dss”) keys: no son solo sospechosos, DSA es inseguro.

La mayoría de los usuarios simplemente escribirían ssh-keygen y aceptar lo que se les da por defecto.

Si. Para hacer una seguridad para las personas, debe ser simple. Por lo tanto, la opción predeterminada debe ser segura, compatible y rápida. Puede proporcionar alternativas, pero el valor predeterminado debe ser “lo suficientemente bueno” para aquellos a quienes no les importa. Por lo tanto, RSA (2048) en el antiguo formato PEM es el predeterminado en este momento.

  • Utilizar -o para OpenSSH key en lugar del antiguo formato PEM (OpenSSH 6.5 introdujo esta función hace casi 3 años el 2014-01-30)

Tres años no es nada. Muchos contenedores lograron evolucionar durante estos años, pero SSH está aquí hace más de 20 años y aún necesita tratar con clientes más antiguos. El nuevo formato OpenSSH aún no se ha adoptado ni soportado ampliamente.

  • ¿Cómo se debe calcular cuántas rondas de KDF usar con -a?

Depende del caso de uso. Creando tu key para su repositorio de “cosas” en Github será diferente a crear un keys en tu agencia nacional favorita como autoridad de certificación o para acceder a documentos supersecretos en un servidor dedicado.

Como se señaló, esto es solo para el nuevo formato, que aún no se usa mucho y aumenta el tiempo para descifrar key. El número predeterminado de rondas es 16 (Sería bueno verlo documentado en alguna parte). Más en la pregunta de Criptografía.

  • Deberían -T utilizarse para probar la seguridad de los primos candidatos? Qué -a valor para usar con esto?

No. Se utiliza para generar números primos (/etc/ssh/moduli) para DH key intercambio. No se utiliza de ninguna manera para generar SSH. keys. Cómo generar y probar el moduli El archivo se explica en un capítulo separado. MODULI GENERATION de la página del manual para ssh-keygen.

  • para los diferentes key tipos, ¿cuáles son los mínimos recomendados? -b bit tallas?

Esto no es específico de SSH, pero generalmente key NIST recomienda los tamaños en este documento, página 12 (para 2015):

RSA (2048 bits)
ECDSA (Curve P-256)

El Ed25519 tiene un tamaño fijo, por lo que el -b se ignora el parámetro.

Aquí hay una línea para Ed25519 basada en los valores recomendados: (sin frase de contraseña)

ssh-keygen -t ed25519 -a 100 -f ~/.ssh/id_ed25519 -q -N ""

Otro para RSA:

ssh-keygen -t rsa -b 4096 -o -a 100 -f ~/.ssh/id_rsa -q -N ""
  • -N: Nueva frase de contraseña
  • -q: Silencio ssh-keygen

Si estás de acuerdo, tienes la opción de dejar una división acerca de qué le añadirías a este post.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *