Seguridad y SSL

Cómo configurar un firewall en tu VPS para proteger tu sitio web

Aprende a configurar un firewall en tu servidor VPS con UFW o iptables para bloquear accesos no autorizados y proteger tu sitio web.

A series of red padlocks attached to a stone wall, symbolizing security and love.

Para configurar un firewall en tu VPS y proteger tu sitio web, instala UFW (Uncomplicated Firewall), permite solo los puertos necesarios (22, 80, 443) y bloquea el resto del tráfico. Es la forma más rápida de cerrar la superficie de ataque de un servidor Linux recién aprovisionado.

Un VPS sin firewall es un servidor con todas las puertas abiertas. Los bots de internet escanean rangos de IP completos en cuestión de minutos buscando puertos expuestos, servicios vulnerables y contraseñas débiles. Configurar un firewall es el primer paso de seguridad que debes completar antes de desplegar cualquier aplicación.

¿Qué es un firewall y por qué lo necesita tu VPS?

Un firewall es un filtro de tráfico de red. Decide qué conexiones entrantes y salientes están permitidas según reglas que tú defines. En un VPS Linux, el firewall opera a nivel del sistema operativo y actúa como la primera capa de defensa antes de que cualquier solicitud llegue a tu servidor web o aplicación.

Sin firewall, todos los puertos abiertos de tu servidor son accesibles públicamente. Eso incluye puertos de administración de bases de datos (3306 MySQL), paneles de administración y servicios internos que nunca deberían ser visibles desde internet.

UFW vs. iptables — ¿cuál usar?

Herramienta Complejidad Ideal para Distros principales
UFW Baja Administradores que no son expertos en redes Ubuntu, Debian
firewalld Media Entornos con zonas de red diferenciadas CentOS, Rocky Linux, RHEL
iptables / nftables Alta Configuraciones avanzadas y scripting Todas las distros Linux

Para la mayoría de sitios web en VPS, UFW ofrece el mejor equilibrio entre simplicidad y control. Esta guía se centra en UFW, pero al final se incluyen los equivalentes en firewalld.

Configurar UFW paso a paso (Ubuntu/Debian)

Paso 1: Instala y verifica UFW

En la mayoría de imágenes de Ubuntu modernas, UFW ya está instalado. Verifica su estado:

sudo apt update
sudo apt install ufw -y
sudo ufw status

Paso 2: Define la política por defecto

Antes de activar el firewall establece las políticas base. La regla de oro: denegar todo el tráfico entrante y permitir todo el saliente:

sudo ufw default deny incoming
sudo ufw default allow outgoing

Paso 3: Permite los puertos esenciales

Importante: añade SSH antes de activar UFW o perderás el acceso a tu servidor.

# SSH — acceso remoto al servidor
sudo ufw allow 22/tcp

# HTTP y HTTPS — tráfico web
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Si cambiaste el puerto SSH por seguridad (por ejemplo al 2222), sustituye 22 por el número correcto.

Paso 4: Activa el firewall

sudo ufw enable

UFW te pedirá confirmación. Escribe y y presiona Enter. A partir de este momento el firewall está activo y sobrevivirá a los reinicios del servidor.

Paso 5: Verifica las reglas activas

sudo ufw status verbose

Deberías ver algo similar a:

Status: active
To                  Action      From
--                  ------      ----
22/tcp              ALLOW IN    Anywhere
80/tcp              ALLOW IN    Anywhere
443/tcp             ALLOW IN    Anywhere

Reglas adicionales según tu stack

Dependiendo de los servicios que uses en tu VPS, quizás necesitas abrir más puertos. Hazlo solo si es estrictamente necesario:

  • MySQL accesible remotamente (solo si lo necesitas): sudo ufw allow from TU_IP to any port 3306 — nunca abras el 3306 al mundo entero.
  • Servidor de correo: sudo ufw allow 25,587,465/tcp
  • FTP/SFTP: prefiere SFTP (usa el puerto 22, ya permitido) en lugar de FTP sin cifrar.
  • Panel de control (Plesk/Webmin): sudo ufw allow 8443/tcp

La filosofía es mínimo privilegio: abre solo lo que activamente necesitas y cierra todo lo demás.

Equivalentes en firewalld (CentOS/Rocky Linux)

Si tu VPS usa una distribución basada en Red Hat, el gestor de firewall es firewalld:

# Habilitar e iniciar
sudo systemctl enable --now firewalld

# Permitir servicios web y SSH
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --permanent --add-service=ssh

# Aplicar cambios
sudo firewall-cmd --reload

# Ver estado
sudo firewall-cmd --list-all

Para una capa adicional de seguridad en tu infraestructura, consulta la sección de seguridad SSL y servidores de nuestro blog.

Conclusiones clave

  • Un firewall es la primera línea de defensa de cualquier VPS: configúralo antes de desplegar tu aplicación.
  • La política de denegación por defecto (deny incoming) es el punto de partida correcto; permite solo lo que necesitas.
  • Abre siempre el puerto SSH antes de activar UFW para no quedarte sin acceso.
  • Nunca expongas puertos de bases de datos (3306, 5432) al internet público; limítalos a IPs de confianza.
  • UFW es la opción más sencilla para Ubuntu/Debian; firewalld para distros basadas en Red Hat.
  • Revisa y audita tus reglas periódicamente: las necesidades cambian y los puertos olvidados son vectores de ataque.

¿Prefieres un servidor ya asegurado y administrado por expertos? En elenlace.com ofrecemos VPS administrados con firewall preconfigurado, monitoreo 24/7 y soporte técnico en español para que te concentres en tu negocio.

Preguntas frecuentes

¿Bloquear el firewall puede hacer que pierda acceso SSH a mi VPS?

Sí, si activas UFW sin antes permitir el puerto 22 (o el puerto SSH personalizado que uses) te quedarás sin acceso remoto. Si eso ocurre, la mayoría de proveedores de VPS tienen una consola de emergencia (VNC o KVM) accesible desde su panel web que te permite acceder al servidor directamente para corregirlo.

¿Necesito firewall si ya uso Cloudflare?

Sí. Cloudflare protege el tráfico web HTTP/HTTPS, pero si tu servidor tiene otros puertos expuestos (MySQL, SSH, paneles de control), Cloudflare no los cubre. El firewall del sistema operativo protege todos los puertos de tu VPS sin importar qué proxy uses en frente.

¿Cuál es la diferencia entre UFW y el firewall del proveedor de VPS?

Los proveedores de VPS (DigitalOcean, Linode, Vultr, etc.) suelen ofrecer un firewall a nivel de red (antes de que el tráfico llegue al servidor). Es una capa adicional excelente, pero complementaria. UFW opera dentro del sistema operativo y permite reglas más granulares. Lo ideal es tener ambos activos.

¿Con qué frecuencia debo revisar las reglas de firewall?

Revisa las reglas cada vez que instales o desinstales un servicio, y como mínimo cada 3-6 meses como auditoría de rutina. Ejecuta sudo ufw status verbose para ver qué está abierto y cuestiona si cada puerto sigue siendo necesario.

¿Prefieres que lo hagamos por ti? En El Enlace resolvemos hosting y desarrollo web profesional.

Recursos útiles

Otros proveedores y guías que vale la pena comparar:

← Todos