Con la llegada de OpenSSH 8.8 y la adopción de los estándares de seguridad de Mozilla Modern, las firmas basadas en el algoritmo SHA-1 (que utilizan las llaves RSA tradicionales) están siendo rechazadas por defecto en las distribuciones modernas (como Debian 12/13, Ubuntu 22.04+ y RHEL 9). Si aplicas un Hardening estricto a tu servidor hoy y presentas una llave RSA, lo más probable es que el servidor te cierre la puerta en la cara con un error de Permission denied (publickey).
El Nuevo Rey: Ed25519 (Criptografía de Curva Elíptica)
El nuevo estándar de la industria se llama Ed25519. ¿Por qué deberías migrar hoy mismo?
Es matemáticamente superior: Ofrece una resistencia criptográfica mucho mayor frente a ataques modernos y de fuerza bruta.
Es ultra rápido: Al basarse en curvas elípticas, la firma y verificación toman una fracción del tiempo que requiere RSA.
Llaves más pequeñas: La llave pública es una cadena de texto mucho más corta, ideal para copiar, pegar y administrar en plataformas centralizadas.
Cómo migrar a Ed25519 en 3 sencillos pasos
El proceso es tan fácil como el antiguo, pero con la sintaxis correcta. Abre tu terminal local y acompáñame:
1. Creamos la nueva llave moderna:
ssh-keygen -t ed25519 -C "tuCorreo@dominio.algo"
(Presiona Enter para guardarla en la ruta por defecto ~/.ssh/id_ed25519 y asigna una contraseña/passphrase fuerte si tu equipo es portátil).
2. Se la enviamos al equipo remoto: Si administras servidores Standalone (independientes), inyecta la llave con el comando clásico:
Nota para entornos Enterprise: Si usas sistemas centralizados de identidad como FreeIPA, simplemente copia el texto de tu llave pública con cat ~/.ssh/id_ed25519.pub y pégalo directamente en la interfaz web de tu perfil de usuario).
3. Validamos el acceso sin contraseñas:
ssh usuario@destino
💡 Pro-Tip de Hardening (Nivel Dios)
Si realmente quieres asegurar tu infraestructura y ya comprobaste que tu llave Ed25519 funciona perfectamente, no dejes la puerta trasera abierta. Obliga al servidor a rechazar cualquier intento de login con contraseña tradicional.
Edita la configuración de tu servidor SSH (sudo vim /etc/ssh/sshd_config o en tu archivo de hardening personalizado) y asegúrate de tener estas dos líneas:
AuthenticationMethods publickey
sudo systemctl restart sshd) y listo. Tu servidor ahora es una fortaleza criptográfica moderna.