Inicio > Gestión de red > ssh-keygen

ssh-keygen: Generación y gestión de pares de claves SSH

ssh-keygen es una utilidad utilizada para generar, administrar y convertir pares de claves de autenticación OpenSSH (clave pública y clave privada). Es una herramienta esencial para conectarse de forma segura a servidores remotos a través de SSH o para autenticarse en servicios como Git.

Descripción general

ssh-keygen es un comando indispensable para generar y administrar claves criptográficas utilizadas en el protocolo SSH. Permite conectarse de forma segura a servidores sin contraseña o autenticarse en servicios como Git.

Funciones principales

  • Generación de pares de claves SSH de varios tipos (RSA, ED25519, etc.)
  • Cambio de la contraseña (passphrase) de claves existentes
  • Extracción de la clave pública de una clave privada
  • Verificación de la huella digital (fingerprint) de la clave
  • Conversión de formatos de clave

Opciones principales

El comando ssh-keygen ofrece varias opciones para la generación y gestión de claves.

Opciones de generación de claves

Opciones de gestión de claves

Comando generado:

Combina los comandos.

Descripción:

`ssh-keygen` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Ejemplos de uso

Puede aprender a generar y administrar claves SSH a través de varios ejemplos de uso de ssh-keygen.

Generación básica de par de claves RSA

ssh-keygen

El uso más común, genera un par de claves RSA en la ruta predeterminada (~/.ssh/id_rsa). Aparecerá un aviso para ingresar la contraseña.

Generación de par de claves ED25519 y adición de comentario

ssh-keygen -t ed25519 -C "your_email@example.com"

Genera una clave de tipo ED25519 y añade un comentario de correo electrónico a la clave pública.

Generación de par de claves con nombre de archivo específico

ssh-keygen -f ~/.ssh/my_custom_key

Genera un archivo de clave con un nombre diferente a la ruta predeterminada. (Ej: ~/.ssh/my_custom_key)

Cambio de la contraseña de una clave existente

ssh-keygen -p -f ~/.ssh/id_rsa

Cambia la contraseña de un archivo de clave privada ya generado. Solicita interactivamente la contraseña actual y la nueva contraseña.

Extracción de clave pública de clave privada

ssh-keygen -y -f ~/.ssh/id_rsa

Extrae la clave pública correspondiente del archivo de clave privada (id_rsa) y la muestra en la salida estándar. Puede guardar esto en el archivo `id_rsa.pub`.

Consejos y precauciones

Consejos y precauciones para usar claves SSH de forma segura y eficiente.

Uso de contraseña (Passphrase)

Establecer una contraseña para la clave privada proporciona una protección adicional contra el uso no autorizado en caso de que la clave se filtre, mejorando la seguridad. Usarla con `ssh-agent` permite usarla en múltiples sesiones sin tener que ingresar la contraseña cada vez.

  • **Mejora de seguridad**: Proporciona una capa adicional de protección si la clave privada se ve comprometida.
  • **Conveniencia**: Permite el uso en múltiples sesiones con una sola autenticación utilizando `ssh-agent`.

Configuración de permisos de archivo de clave

Los archivos de clave privada deben tener permisos que solo permitan al propietario leer y escribir. Es importante usar `chmod 600` para asegurarse de que otros usuarios no puedan acceder a ellos.

  • **Clave privada**: `chmod 600 ~/.ssh/id_rsa` (Solo propietario puede leer/escribir)
  • **Clave pública**: `chmod 644 ~/.ssh/id_rsa.pub` (Propietario lee/escribe, grupo/otros leen)

Tipos de clave recomendados

Se recomienda usar claves ED25519 o RSA de 4096 bits para los estándares de seguridad más recientes.

  • **ED25519**: Más rápido, más seguro y con un tamaño de clave menor.
  • **RSA 4096**: Ampliamente compatible y aún así proporciona una seguridad sólida.

Comandos de la misma categoría