Cómo detectar y detener ataques DDoS en servidores Linux

Recientemente escribí un artículo sobre cómo detectar y detener un ataque DoS en Linux. DoS significa denegación de servicio, que es un ataque muy común en servidores que puede dejarlos inutilizables hasta que se mitigue el problema.

Hay otro tipo de ataque similar llamado ataque distribuido de denegación de servicio (DDoS) que es más difícil de descubrir y detener. Este tipo de ataque utiliza la misma idea que el ataque de denegación de servicio, solo que distribuye el ataque en varios servidores. En lugar de ver cómo su servidor es golpeado por una sola dirección, ese golpeo proviene de una colección distribuida de servidores. En lugar de tener una sola fuente golpeando tu servidor miles de veces, podrías tener mil servidores golpeando tu servidor solo unas pocas veces.

Voy a mostrarte cómo puedes verificar y detener los ataques DDoS en tus servidores Linux. Te advierto, la mitigación de DDoS no es tan fácil como con DoS. De hecho, con DDoS, no solo tendrás que usar el comando netstat, sino que también tendrás que conocer bien tu red y poder hacer algunas suposiciones sobre la naturaleza de las conexiones descubiertas.

En otras palabras, la mitigación de DDoS no es tan clara y precisa.

Índice de Contenido
  1. Lo que necesitarás
  2. Cómo verificar subredes
  3. Cómo detener los ataques

Lo que necesitarás

  • Un servidor Linux
  • Un usuario con privilegios de sudo

Cómo verificar subredes

Lo primero que debes verificar son las conexiones de las subredes comunes (/16 o /24 son las más utilizadas). Inicia sesión en tu servidor Linux y emite el siguiente comando para ver qué conexiones están llegando desde la misma subred (/16):

netstat -ntu|awk '{print $5}'|cut -d: -f1 -s |cut -f1,2 -d'.'|sed 's/$/.0.0/'|sort|uniq -c|sort -nk1 -r

Protección antivirus en línea: McAfee Clinic lleva la seguridad de tu PC al siguiente nivel

Si el comando netstat no se encuentra, deberás instalarlo con el siguiente comando:

sudo apt-get install net-tools -y

Deberías ver una lista de todas las conexiones desde direcciones que contienen los mismos dos primeros octetos, como 192.168.x.x (Figura A).

Figura A

Cómo detectar y detener ataques DDoS en servidores Linux - Seguridad | Imagen 1 Newsmatic

Como puedes ver, tengo 13 conexiones a este servidor procedentes de la subred 192.168.x.x.

Cómo proteger tu computadora de los virus: métodos y consejos

Para encontrar conexiones de la subred /24, el comando sería:

netstat -ntu|awk '{print $5}'|cut -d: -f1 -s |cut -f1,2,3 -d'.'|sed 's/$/.0/'|sort|uniq -c|sort -nk1 -r

El comando anterior mostrará todas las conexiones desde la misma subred de los primeros tres octetos (como 192.168.1.x). Si encuentras un gran número de conexiones provenientes de alguna de esas subredes, habrás reducido tu búsqueda un poco.

Otro comando netstat listaré todas las direcciones IP que se han conectado al servidor. Este comando es:

netstat -anp |grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c

Deberías ver una lista de todas las direcciones IP conectadas y el número de veces que se han conectado.

¡Defiéndete! Protege tu seguridad en línea contra amenazas críticas

Luego, usamos netstat para calcular y contar el número de conexiones que cada dirección IP realiza a tu servidor. Ese comando es:

sudo netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

El comando anterior enumerará las direcciones IP de todas las subredes que están enviando solicitudes de conexión a tu servidor.

En este punto, deberías tener una buena idea de dónde provienen las conexiones y qué direcciones IP están asociadas con esas conexiones. Es posible que tengas un gran número de conexiones provenientes de una subred en particular. Si esa subred no debería estar golpeando el servidor con ese nivel de tráfico, lo más probable es que ese sea el origen del ataque DDoS.

Cómo detener los ataques

Esto no es tan fácil como verificar y detener un ataque DoS. Sin embargo, la buena noticia es que una vez que hayas determinado de dónde proviene el ataque DDoS, puedes detenerlo de la misma manera que detuviste el ataque DoS. Simplemente ejecuta el comando:

sudo route add ADDRESS reject

Protege tus contraseñas con PAM: Tu aliado para la seguridad

Donde ADDRESS es la dirección en cuestión. Con el ataque DDoS, deberás ejecutar el comando anterior para cada dirección sospechosa que hayas encontrado usando los comandos netstat. Esto puede llevar tiempo considerable, dependiendo de la cantidad de máquinas que estén atacando tu servidor.

Si has descubierto que los ataques provienen de una misma subred (una que no debería tener acceso al servidor), puedes bloquear toda esa subred utilizando iptables de la siguiente manera:

sudo iptables -A INPUT -s ADDRESS/SUBNET -j DROP

Asegúrate de reemplazar ADDRESS/SUBNET con lo que hayas descubierto que está atacando tu servidor.

Otro problema a considerar es por qué esas máquinas de las subredes de tu LAN están bombardeando tu servidor con ataques. Si ese es el caso, probablemente tienes un problema mucho más grave entre manos. Una de las mejores cosas que puedes hacer para esos servidores es instalar fail2ban (consulta Cómo instalar fail2ban en Ubuntu Server 18.04). Esa herramienta te ayudará a automatizar la prevención de inicios de sesión no deseados y ataques.

Recuerda, resolver ataques DDoS no es tan simple como su primo DoS. Deberás dedicar algo de tiempo a los comandos para reducir de dónde están llegando los ataques, pero este tiempo se invertirá bien.

Cómo configurar un servidor VPN para hacer conexiones a través de firewalls

Suscríbete al canal How To Make Tech Work de Newsmatic en YouTube para obtener los últimos consejos técnicos para profesionales empresariales de Jack Wallen.

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Seguridad, allí encontraras muchos artículos similares a Cómo detectar y detener ataques DDoS en servidores Linux , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.