Cómo proteger un VPS de ataques DDoS
Un ataque de denegación de servicio distribuido (DDoS) inunda un servidor o su conexión de red con tráfico hasta que los visitantes reales no pueden acceder. Algunos ataques son demasiado grandes para que el propio servidor los soporte, por lo que la protección funciona mejor por capas: primero el filtrado en el borde de la red y después los ajustes de firewall y de aplicación en el VPS. ONIE protege servidores cloud en Ciudad Ho Chi Minh con DDoS Shield en el borde de la red sin cargo adicional, y puedes desplegar un VPS con protección DDoS en pocos minutos.
Tipos de ataques
- Volumétricos (capas 3 y 4): inundaciones de paquetes que saturan el enlace de red, por ejemplo, inundaciones UDP.
- Ataques de protocolo: abuso de la gestión de conexiones, como los SYN flood, que llenan la tabla de conexiones.
- Capa de aplicación (capa 7): muchas solicitudes HTTP con apariencia válida que agotan el servidor web o la base de datos.
Cada tipo requiere una defensa distinta. El tráfico volumétrico debe detenerse antes de llegar al servidor; las inundaciones de capa de aplicación pueden reducirse en el propio servidor.
1. Filtra en el borde de la red
El filtrado en el borde descarta el tráfico malicioso antes de que llegue a tu VPS, de modo que el enlace no se satura. Con DDoS Shield, el filtrado se ejecuta en el borde de la red usando XDP/eBPF, y la consola muestra el tráfico y los eventos de ataque de cada IP. Pregunta a cualquier proveedor que evalúes qué está incluido, dónde se realiza el filtrado y si tiene costo adicional.
2. Cierra lo que no usas
sudo ufw default deny incoming
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enableNo expongas bases de datos ni paneles de administración a internet. Vincúlalos a 127.0.0.1 o a una red privada.
3. Ajusta el kernel para los SYN flood
Las SYN cookies están activadas por defecto en la mayoría de las distribuciones. Compruébalo:
sysctl net.ipv4.tcp_syncookiesMantén los cambios en el kernel pequeños y pruébalos, porque los valores incorrectos pueden afectar al tráfico normal.
4. Limita las solicitudes en Nginx
En el bloque http:
limit_req_zone $binary_remote_addr zone=perip:10m rate=10r/s;
limit_conn_zone $binary_remote_addr zone=connperip:10m;En el bloque server o location:
limit_req zone=perip burst=20 nodelay;
limit_conn connperip 20;Recarga con sudo nginx -t && sudo systemctl reload nginx. Sirve los archivos estáticos desde caché y usa un plugin de caché en WordPress para reducir el costo de cada solicitud. Consulta cómo instalar WordPress con Nginx.
5. Supervisa el tráfico
ss -s
sudo ss -ntu state established | wc -l
sudo apt install -y nload && nloadUn aumento repentino de conexiones o de ancho de banda, o un servidor lento con bajo uso de CPU, puede indicar un ataque. Configura alertas para detectarlo a tiempo.
6. Lista de comprobación ante incidentes
- Confirma en la consola si el tráfico es un ataque o un pico real.
- Revisa los eventos de ataque y la IP atacada.
- Bloquea las direcciones de origen abusivas o los rangos que puedas identificar.
- Activa límites de tasa más estrictos o una página de mantenimiento.
- Contacta con el soporte de tu proveedor indicando la hora y la IP.
- Después, revisa los registros y actualiza este plan. Mantén al día las copias de seguridad y snapshots.
Preguntas frecuentes
¿Puede un firewall en el VPS detener un DDoS grande?
No por sí solo. Si el tráfico satura el enlace de red, el servidor no puede filtrarlo. Necesitas filtrado antes del servidor, en sentido ascendente.
¿Ayuda una CDN?
En sitios web, una CDN o un proxy inverso puede absorber el tráfico web, siempre que la IP real de tu servidor no quede expuesta en los registros DNS ni en los encabezados de correo.
¿Necesito un plan especial para la protección DDoS?
Depende del proveedor. Revisa qué incluye tu plan y tu ubicación.