Un cortafuegos decide qué puertos de tu servidor aceptan conexiones desde el exterior. Todo lo que no abras explícitamente debería quedar cerrado: eso es default-deny, y reduce tu superficie de ataque a solo los servicios que realmente ejecutas. UFW hace esto sencillo. Lo único que hay que hacer bien es el orden: permite SSH antes de activar el cortafuegos, o te quedarás fuera.
1. Instala UFW (normalmente ya está presente)
sudo apt update && sudo apt install -y ufw
2. Permite SSH PRIMERO, antes que nada más
Este es el paso que evita quedarte bloqueado. Hazlo antes de enable:
sudo ufw allow OpenSSH
# o, si usas un puerto SSH personalizado:
# sudo ufw allow 22/tcp
3. Abre solo los puertos que necesitas
sudo ufw allow 80/tcp # HTTP, si sirves un sitio web
sudo ufw allow 443/tcp # HTTPS
# añade puertos específicos de la app solo si hace falta, por ejemplo:
# sudo ufw allow 51820/udp # VPN WireGuard
4. Define la política por defecto y activa
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable # pide confirmación
5. Verifica
sudo ufw status verbose
Deberías ver SSH y los puertos elegidos permitidos, y todo lo demás denegado. Comprueba esto después de cada cambio.
Tareas habituales
sudo ufw allow 3000/tcp # abrir un puerto
sudo ufw delete allow 3000/tcp # volver a cerrarlo
sudo ufw status numbered # listar reglas con números
sudo ufw delete 2 # eliminar la regla nº 2
sudo ufw disable # apagar el cortafuegos
Advertencias honestas
- Permite SSH antes de
ufw enable. Este es el único error que deja a la gente fuera de su propio servidor. Si ocurre, una consola del proveedor te devuelve el acceso: EQVPS da consola de navegador a cada VPS. - Un cortafuegos es una capa. Controla los puertos abiertos, no lo que sucede en ellos. Combínalo con la autenticación por clave SSH y fail2ban.
- En planes NAT, los puertos entrantes funcionan de otra forma: un cortafuegos en el servidor sigue ayudando, pero solo un plan con IP dedicada acepta tráfico entrante arbitrario.
Siguientes pasos
Un cortafuegos más claves es la mayor parte de un servidor endurecido. Termina con la checklist de seguridad de un VPS nuevo. ¿Vas a abrir el 443 para una aplicación web? Mira cómo configurar un proxy inverso nginx con HTTPS.
Comentarios
Aún no hay comentarios. Sé el primero.