Esta guía explica cómo instalar y configurar UFW (Uncomplicated Firewall), un cortafuegos sencillo y eficaz para Linux.
📋 Requisitos previos
- VPS con acceso root o sudo
- Conexión SSH activa
- Ubuntu/Debian
📥 Instalación de UFW
Bashsudo apt update sudo apt install ufw -y sudo ufw status
Si UFW no está activado, verá: Status: inactive
⚙️ Configuración básica
Importante: Antes de activar UFW, permita el puerto SSH (22), de lo contrario quedará bloqueado.
Bash1# Bloquear entradas, permitir salidas 2sudo ufw default deny incoming 3sudo ufw default allow outgoing 4 5# Permitir conexiones esenciales 6sudo ufw allow 22/tcp 7sudo ufw allow 80/tcp 8sudo ufw allow 443/tcp
🔧 Activar UFW
Bashsudo ufw enable sudo ufw status verbose
📝 Reglas avanzadas
Bash1# Permitir una IP específica 2sudo ufw allow from 192.168.1.100 3sudo ufw allow from 192.168.1.100 to any port 22 4 5# Rango de puertos 6sudo ufw allow 8000:9000/tcp 7 8# Denegar conexiones 9sudo ufw deny 8080/tcp 10sudo ufw deny from 192.168.1.200
🔍 Gestión de reglas
Bashsudo ufw status numbered sudo ufw delete 3 sudo ufw delete allow 80/tcp sudo ufw reset
💡 Ejemplos comunes
Servidor web
Bash1sudo ufw default deny incoming 2sudo ufw default allow outgoing 3sudo ufw allow 22/tcp 4sudo ufw allow 80/tcp 5sudo ufw allow 443/tcp 6sudo ufw enable
Servidor de correo
Bash1sudo ufw allow 25/tcp # SMTP 2sudo ufw allow 587/tcp # SMTP submission 3sudo ufw allow 465/tcp # SMTPS 4sudo ufw allow 993/tcp # IMAPS 5sudo ufw allow 995/tcp # POP3S
Servidor de base de datos
Bashsudo ufw allow from 192.168.1.0/24 to any port 3306 sudo ufw allow from 192.168.1.0/24 to any port 5432
✅ Verificación
Bashsudo ufw status verbose sudo ufw status numbered
🚫 Desactivar UFW
Bashsudo ufw disable sudo ufw enable
📚 Buenas prácticas
- Permita SSH antes de activar UFW
- Pruebe las reglas antes de producción
- Use IPs específicas cuando sea posible
- Revise las reglas regularmente
- Documente su configuración
🆘 Solución de problemas
No puedo conectarme por SSH tras activar UFW
Bashsudo ufw reset sudo ufw allow 22/tcp sudo ufw enable
Las reglas no se aplican
Bashsudo ufw status sudo ufw reload sudo iptables -L -n
📚 Recursos adicionales
❓ Preguntas frecuentes
P: ¿Puedo usar UFW con otros cortafuegos?
R: No, UFW gestiona iptables directamente. Usarlo con firewalld puede causar conflictos.
P: ¿Funciona UFW en CentOS/RHEL?
R: UFW está pensado para Debian/Ubuntu. En CentOS/RHEL use firewalld.
P: ¿Cómo ver los puertos abiertos?
R: sudo ufw status verbose