Hosting VPS y dedicados Version en ingles

Articulo de ayuda

Cómo Crear y Usar Claves SSH para tu Servidor

Crea y usa claves SSH (ed25519, RSA) para conectarte a tu VPS sin contraseña: generar, copiar, configurar y desactivar el acceso por contraseña.

Publicado: 11/7/2026 Actualizado: 11/7/2026

Introducción

Las claves SSH son el método más seguro para acceder a un servidor. A diferencia de las contraseñas, no se pueden adivinar con ataques de fuerza bruta, y además te permiten conectarte sin escribir la contraseña cada vez.

Si vas a gestionar un VPS, configurar claves SSH es lo primero que deberías hacer. En este artículo vas a ver cómo crearlas, copiarlas al servidor y desactivar el acceso por contraseña.

Qué es una clave SSH

Una clave SSH está formada por dos archivos que funcionan como un candado y su llave:

  • Clave privada: se queda en tu ordenador. Es la llave. No la compartas nunca con nadie.
  • Clave pública: se copia al servidor. Es el candado. Se puede compartir sin problema.

Cuando te conectas, tu ordenador demuestra que tiene la llave privada que corresponde al candado público del servidor. Si coinciden, entras. Si no, se rechaza la conexión.

[Imagen sugerida: esquema de cómo funcionan la clave pública y la clave privada]

A diferencia de una contraseña, la clave privada nunca viaja por la red. Por eso es imposible interceptarla, por mucho que alguien escuche tu conexión.

Paso 1: Crear la clave SSH en tu ordenador

Abre el terminal en tu ordenador (no en el servidor):

  • Windows: PowerShell o Símbolo del sistema.
  • Linux/Mac: Terminal.

Genera una clave con el algoritmo ed25519 (el más moderno y recomendado):

ssh-keygen -t ed25519

Si tu sistema es muy antiguo y no soporta ed25519, usa RSA: ssh-keygen -t rsa -b 4096

Te hará tres preguntas:

  1. Dónde guardarla: pulsa Enter para dejarla en el sitio por defecto (~/.ssh/id_ed25519).
  2. Contraseña (passphrase) opcional: una contraseña extra que protege la clave. Recomendada pero opcional. Si la pones, te la pedirá cada vez que uses la clave.
  3. Confirmar la contraseña: repítela.

Se crean dos archivos:

  • ~/.ssh/id_ed25519 → clave privada (no la compartas).
  • ~/.ssh/id_ed25519.pub → clave pública (la que copias al servidor).

Paso 2: Copiar la clave pública al servidor

La forma más sencilla es con ssh-copy-id:

ssh-copy-id root@tu-ip-del-servidor

Te pedirá la contraseña del servidor una última vez. A partir de ese momento, la clave está copiada.

Si tu sistema no tiene ssh-copy-id (como algunas versiones de Windows), puedes hacerlo manualmente:

type ~/.ssh/id_ed25519.pub | ssh root@tu-ip-del-servidor "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Paso 3: Comprobar que la clave funciona

Conéctate al servidor:

ssh root@tu-ip-del-servidor

Si configuraste una passphrase para la clave, te la pedirá. Si no, debería entrar sin pedir contraseña del servidor. Si es así, la clave SSH está funcionando.

No sigas al paso 4 hasta confirmar que la clave funciona. Si desactivas la contraseña sin haber confirmado la clave, te quedarás fuera.

Paso 4: Desactivar el acceso por contraseña

Una vez confirmado que la clave funciona, desactiva el acceso por contraseña para máxima seguridad.

En el servidor, edita la configuración de SSH:

nano /etc/ssh/sshd_config

Busca y cambia estas líneas:

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password
  • PasswordAuthentication no: desactiva el acceso por contraseña.
  • PubkeyAuthentication yes: activa el acceso por clave.
  • PermitRootLogin prohibit-password: permite root solo con clave, no con contraseña.

Guarda y reinicia SSH:

systemctl restart ssh

[Imagen sugerida: captura del archivo sshd_config con las opciones correctas]

Cómo gestionar varias claves o servidores

Varios servidores, un solo ordenador

Tu ordenador puede tener varias claves y conectarse a varios servidores. Para no escribir la IP y el puerto cada vez, crea un archivo de configuración:

nano ~/.ssh/config
Host miservidor
    HostName 192.168.1.100
    User root
    Port 2222
    IdentityFile ~/.ssh/id_ed25519

A partir de entonces, conecta con:

ssh miservidor

Varios usuarios autorizados

Si quieres que varias personas accedan al mismo servidor, copia la clave pública de cada una al archivo ~/.ssh/authorized_keys del servidor. Cada línea es una clave.

Consejos útiles

  • Usa ed25519, no RSA. Es más seguro y más corto.
  • Protege la clave privada con una passphrase. Si alguien roba tu ordenador, no podrá usar la clave sin la passphrase.
  • Guarda un backup de tu clave privada. Si la pierdes, tendrás que generar una nueva.
  • No compartas nunca la clave privada. La pública sí se puede compartir; la privada, jamás.
  • Revoca claves antiguas. Si alguien deja de necesitar acceso, borra su clave del authorized_keys.

Problemas frecuentes

Me sigue pidiendo la contraseña del servidor

La clave pública no está bien copiada o los permisos son incorrectos. En el servidor, comprueba:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Y verifica que la clave pública está en ~/.ssh/authorized_keys (puedes verla con cat ~/.ssh/authorized_keys).

Permission denied (publickey)

Después de desactivar la contraseña, este error significa que la clave no se reconoce. Comprueba que copiaste la clave correcta y que los permisos de .ssh son los adecuados.

He perdido mi clave privada

Tendrás que acceder por consola de recuperación (si tu proveedor la ofrece) o pedir a soporte que te la restablezca. Una vez dentro, copia una nueva clave.

Quiero usar la misma clave en dos ordenadores

Copia los dos archivos (id_ed25519 e id_ed25519.pub) al segundo ordenador, en la carpeta ~/.ssh/. Pon los permisos correctos:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_ed25519

La passphrase me molesta

Puedes quitarla, pero es menos seguro. Si la quitas, cualquiera que acceda a tu ordenador podrá entrar al servidor. Mejor usa un agente SSH (ssh-agent) que recuerde la passphrase durante la sesión.

Preguntas frecuentes

¿Las claves SSH son más seguras que las contraseñas?

Sí, mucho más. Una clave de 256 bits (ed25519) es matemáticamente imposible de adivinar, mientras que una contraseña sí se puede adivinar con fuerza bruta.

¿Necesito una clave distinta para cada servidor?

No es obligatorio, pero es recomendable. Así, si una clave se compromete, no afecta a todos tus servidores.

¿La passphrase de la clave es obligatoria?

No, pero muy recomendable. Protege la clave privada si alguien accede a tu ordenador.

¿Puedo usar la misma clave en Windows, Linux y Mac?

Sí. La clave privada es un archivo de texto que puedes copiar entre sistemas. Solo asegúrate de poner los permisos correctos.

¿Qué pasa si alguien roba mi clave privada?

Si tiene passphrase, no podrá usarla sin adivinarla. Si no tiene passphrase, podrá entrar a tu servidor. Genera una clave nueva y borra la comprometida del authorized_keys del servidor.

Acceso seguro, sin contraseñas

Las claves SSH son el estándar de seguridad para acceder a servidores. Una vez configuradas, te conectas con un comando, sin contraseñas, y con un nivel de seguridad imposible de conseguir con contraseñas.

Si tienes un VPS administrado de miHosting, nosotros configuramos y gestionamos las claves SSH por ti. Si tienes un VPS autogestionado, esta guía te sirve para proteger tu servidor desde el primer día. Abre un ticket desde tu panel de cliente si necesitas ayuda.