Configuración y operación

¿Cómo aseguro un nuevo VPS?

Respuesta corta

Cinco pasos cubren la gran mayoría de los compromisos en el mundo real: SSH con clave y autenticación por contraseña deshabilitada, sin acceso root directo, un cortafuegos con denegación por defecto, actualizaciones de seguridad automáticas y fail2ban o un equivalente. En conjunto, toman unos diez minutos y eliminan prácticamente todos los ataques automatizados.

Los ataques automatizados comienzan a los pocos minutos de que una dirección esté activa. No van dirigidos contra ti; van dirigidos contra todos, de forma continua. La autenticación por contraseña en el puerto 22 es lo que buscan.

El paso que la gente se salta es el cortafuegos. Denegar la entrada por defecto, con permitidos explícitos solo para lo que realmente sirves, te protege del servicio que olvidaste que estaba escuchando, que es como comienzan la mayoría de las intrusiones reales.

  • ssh-keygen -t ed25519, sube la clave pública y luego establece PasswordAuthentication no
  • PermitRootLogin no; usa un usuario normal con sudo
  • nftables o ufw: denegar la entrada por defecto, permitir solo 22, 80, 443 y nada más
  • Activa unattended-upgrades para que los parches de seguridad se apliquen sin necesidad de tu intervención
  • Instala fail2ban, o mueve SSH detrás de WireGuard para que no esté expuesto en absoluto
  • Haz una instantánea una vez que esté configurado; esa se convierte en tu estado conocido-bueno

Ver también: fail2ban