EQVPS

Cómo configurar la autenticación por clave SSH en un VPS

Sustituye los inicios de sesión por contraseña por un par de claves SSH: genera una clave, copia la mitad pública en tu servidor, pruébala y desactiva la contraseña. La mayor mejora de seguridad para cualquier VPS nuevo, en unos pocos comandos.

Los inicios por contraseña son el eslabón más débil de un servidor nuevo: los bots escanean internet y machacan el puerto 22 con intentos las 24 horas. Cambiar la contraseña por un par de claves SSH elimina esa superficie de ataque por completo, y es lo primero que conviene hacer en cualquier VPS nuevo. Aquí está todo el proceso en unos pocos comandos.

Cómo funcionan las claves SSH

Generas un par: una clave privada que se queda en tu ordenador y una pública que colocas en el servidor. El servidor desafía a quien se conecta; solo el titular de la privada correspondiente puede responder. Puedes repartir la pública libremente: la que proteges es la privada.

1. Genera un par de claves (en tu propio ordenador)

ssh-keygen -t ed25519 -C "you@example.com"
# pulsa Enter para aceptar la ruta por defecto (~/.ssh/id_ed25519)
# pon una passphrase para más seguridad, o déjala vacía

Esto crea dos archivos: ~/.ssh/id_ed25519 (privada, nunca compartir) y ~/.ssh/id_ed25519.pub (pública).

2. Copia la clave pública en tu servidor

La forma fácil, si aún puedes entrar por contraseña:

ssh-copy-id root@YOUR.SERVER.IP

¿No hay ssh-copy-id? Hazlo a mano:

cat ~/.ssh/id_ed25519.pub | ssh root@YOUR.SERVER.IP \
  "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

3. Prueba la clave antes de cambiar nada

Abre una terminal nueva e inicia sesión: no debería pedirte la contraseña del servidor:

ssh root@YOUR.SERVER.IP

Si funciona, mantén esta sesión abierta mientras haces el siguiente paso, para que un error no te deje fuera.

4. Desactiva el inicio por contraseña

En el servidor, edita /etc/ssh/sshd_config:

sudo sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo systemctl restart ssh    # en algunas distros el servicio se llama sshd

A partir de ahora solo entra tu clave, y el ruido constante de fuerza bruta en el puerto 22 simplemente rebota.

Advertencias honestas

Siguientes pasos

Una clave SSH es el primer paso de un servidor endurecido. Combínala con un cortafuegos —mira cómo configurar un cortafuegos UFW y cómo configurar fail2ban— y pasa la checklist de seguridad de un VPS nuevo antes de exponer nada. En un VPS sin KYC pagado en cripto, una clave es además la forma de mantener tu acceso realmente tuyo.

Preguntas frecuentes

¿Por qué una clave SSH en vez de una contraseña?

Una contraseña se puede adivinar o romper por fuerza bruta; los bots machacan el puerto 22 sin parar. Un par de claves SSH es prácticamente imposible de adivinar, y una vez desactivas el inicio por contraseña esos intentos de fuerza bruta simplemente fallan. Además es más cómodo: entras sin teclear contraseña cada vez.

¿Qué diferencia hay entre la clave pública y la privada?

El par se genera junto. La clave privada (id_ed25519) se queda en tu ordenador y nunca se comparte. La pública (id_ed25519.pub) se copia al servidor. Cualquiera puede tener tu clave pública sin riesgo; solo la privada correspondiente puede iniciar sesión, así que guarda la privada.

¿ed25519 o RSA, cuál genero?

ed25519 para todo lo moderno: claves más cortas, más rápidas y seguras. Usa RSA (mínimo 4096 bits) solo si debes conectarte a sistemas viejos sin ed25519. Los comandos de abajo usan ed25519.

¿Y si pierdo mi clave privada?

Pierdes esa vía de acceso. Si el inicio por contraseña sigue activo, úsalo para añadir una nueva clave; si lo desactivaste, entra por la consola del proveedor (EQVPS tiene consola de navegador) y añade una nueva clave pública. Haz copia de tu clave privada y considera una segunda clave para que perder una no sea un bloqueo.

¿Es seguro desactivar por completo la contraseña?

Sí, una vez que tu clave funciona y has confirmado que puedes entrar con ella. Prueba la clave en una segunda terminal antes de cerrar tu sesión actual, para que un error nunca te deje fuera. Después, desactivar las contraseñas elimina toda la superficie de ataque por fuerza bruta.

Comentarios

Aún no hay comentarios. Sé el primero.

Deja un comentario

Los comentarios se moderan antes de aparecer.