Por que configurar un firewall en el VPS
Un firewall es la primera linea de defensa de cualquier servidor expuesto a internet. Sin un firewall configurado, todos los puertos del servidor son accesibles desde cualquier IP del mundo, lo que expone innecesariamente servicios internos del sistema operativo a posibles ataques. Configurar correctamente el firewall garantiza que solo los servicios necesarios sean accesibles desde el exterior, reduciendo drasticamente la superficie de ataque del servidor.
UFW (Uncomplicated Firewall) es una interfaz de usuario simplificada para iptables, el sistema de filtrado de paquetes nativo de Linux. Esta disponible por defecto en Ubuntu y puede instalarse facilmente en otras distribuciones de Debian. Su sintaxis es mucho mas sencilla que la de iptables directamente.
Instalar y configurar UFW
# Instalar UFW (si no esta disponible) sudo apt install ufw # Verificar el estado actual sudo ufw status verbose # Politica por defecto: denegar todo el trafico entrante sudo ufw default deny incoming sudo ufw default allow outgoing
Reglas basicas recomendadas para un VPS web
# Permitir SSH (IMPORTANTE: hacerlo ANTES de activar UFW) sudo ufw allow 22/tcp # Si se cambio el puerto SSH sudo ufw allow 2222/tcp # Permitir HTTP y HTTPS sudo ufw allow 80/tcp sudo ufw allow 443/tcp # Permitir MySQL solo desde localhost (no desde internet) # No agregar regla para 3306 para acceso externo # Activar UFW sudo ufw enable
Tabla de puertos comunes y su uso
| Puerto | Servicio | Abrir al exterior |
|---|---|---|
| 22 | SSH | Si (o el puerto personalizado) |
| 80 | HTTP | Si |
| 443 | HTTPS | Si |
| 21 | FTP | Solo si se usa FTP activo |
| 3306 | MySQL | No (solo localhost o IP especifica) |
| 6379 | Redis | No (solo localhost) |
| 25, 465, 587 | Correo SMTP | Si se tiene servidor de correo |
| 2083, 2087 | cPanel y WHM | Si se usa cPanel |
Gestionar reglas de UFW
# Ver reglas numeradas sudo ufw status numbered # Eliminar una regla por numero sudo ufw delete 3 # Permitir acceso desde una IP especifica sudo ufw allow from 203.0.113.50 to any port 3306 # Reiniciar UFW sudo ufw reload # Deshabilitar UFW temporalmente sudo ufw disable
