Generador de claves SSH
Elige un tipo de clave y obtén un nuevo par de claves SSH. Las crea la API Web Crypto de tu navegador en este dispositivo; no se generan en nuestro servidor ni se envían a ningún sitio. La clave pública es una línea para authorized_keys o tu servicio Git; la privada se descarga como archivo OpenSSH.
Funciona en tu navegador: nada de lo que escribes se envía a ningún sitio.
Cómo se usa
- Deja el tipo en Ed25519, salvo que un servidor necesite RSA.
- Si quieres, escribe un comentario, como tu correo.
- Copia la clave pública o descarga el archivo .pub y añádela al servidor o a tu servicio Git.
- Descarga la clave privada, guárdala en ~/.ssh con permisos 600 y añade una frase de contraseña con ssh-keygen -p.
Al abrir la página se crea un par de claves; pulsa Nuevo par de claves para obtener otro.
Cómo funciona
El navegador crea el par de claves con Web Crypto: Ed25519 directamente y RSA con exponente público 65537. Después, la herramienta escribe las claves en los formatos propios de OpenSSH. La clave pública es el tipo de clave seguido de un bloque Base64 con el nombre del tipo y los números de la clave. La clave privada es el contenedor «openssh-key-v1» que ssh-keygen escribe por defecto desde OpenSSH 7.8, aquí sin cifrar.
Ejemplo
Una línea de clave pública Ed25519 tiene este aspecto, con tu comentario al final:
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP… user@laptop
El archivo de la clave privada empieza por -----BEGIN OPENSSH PRIVATE KEY-----. Ejecutar ssh-keygen -y -f id_ed25519 sobre él imprime la misma línea de clave pública: una forma rápida de comprobar que los dos archivos forman pareja.
Consejos
- Una clave por dispositivo es más fácil de revocar que una sola clave copiada en todas partes.
- Si un servidor rechaza la clave, revisa su versión de sshd y los tipos de clave permitidos; los servidores muy antiguos solo aceptan RSA.
- No envíes nunca la clave privada a nadie. Solo el archivo .pub está pensado para compartirse.
Preguntas frecuentes
¿Es seguro generar una clave SSH en el navegador?
La clave la crea la API Web Crypto integrada en el navegador a partir de su generador aleatorio seguro, el mismo que usan las webs para TLS. Se crea en esta pestaña y solo sale de ella cuando la copias o descargas. Si tu política exige generar las claves en la máquina que las usa, ejecuta ssh-keygen allí.
¿Elijo Ed25519 o RSA?
Ed25519 es el tipo de clave por defecto del ssh-keygen actual y se acepta casi en todas partes: claves cortas, rápidas y robustas. Elige RSA solo para servidores o dispositivos antiguos que no aceptan Ed25519; en ese caso, 3072 o 4096 bits es un tamaño razonable.
¿Dónde pongo los archivos?
En Linux y macOS guarda la clave privada como ~/.ssh/id_ed25519 (o ~/.ssh/id_rsa), ejecuta chmod 600 sobre ella y guarda el archivo .pub al lado. Añade la línea de la clave pública a ~/.ssh/authorized_keys en el servidor o pégala en los ajustes de claves SSH de tu servicio Git.
¿Por qué no hay opción de frase de contraseña?
Cifrar una clave privada OpenSSH requiere la derivación de claves bcrypt_pbkdf, que esta herramienta no implementa. Después de guardarla, ejecuta ssh-keygen -p -f con el nombre del archivo para añadir una frase de contraseña; la clave en sí no cambia.
¿Qué es la huella?
El hash SHA-256 de la clave pública en Base64, el mismo valor SHA256:… que muestran ssh-keygen -l y los clientes SSH. Sirve para confirmar que un servidor o un servicio Git tiene la clave que esperas.