Cómo detectar y mitigar un ataque de denegación de servicio (DoS) en tu servidor Linux

Si tienes servidores Linux en tu centro de datos o están alojados en un servidor en la nube (como AWS, Google Cloud o Azure), no puedes asumir que son seguros solo por el sistema operativo que has implementado. Aunque Linux es uno de los sistemas operativos más seguros del mercado, no es perfecto. De hecho, ha habido un aumento de ataques en esta plataforma, que continuarán en aumento a medida que Linux se vuelva más popular.

Índice de Contenido
  1. ¿Qué debes hacer?
  2. Lo que necesitarás
  3. Cómo instalar netstat
  4. Cómo verificar la carga de tu servidor
  5. Cómo verificar la carga de tu red
  6. Cómo averiguar qué direcciones IP están conectadas a tu servidor

¿Qué debes hacer?

Cuando sospechas que uno de tus servidores podría estar siendo atacado, necesitas verificarlo. ¿Pero cómo? En este artículo te mostraré algunos comandos que pueden ayudarte a determinar si tu servidor está siendo víctima de un ataque de denegación de servicio (DoS), el cual proviene de una única dirección IP y tiene como objetivo dejar inaccesible un sitio web al colapsar su servidor. Existe otra forma de este tipo de ataque, conocido como ataque de denegación de servicio distribuido (DDoS), que proviene de múltiples fuentes.

A continuación, veremos cómo detectar si tu servidor Linux está siendo objetivo de un ataque DoS.

Lo que necesitarás

Lo único que necesitarás para esto es una instancia de Linux y un usuario con privilegios de sudo. En este caso, estaré demostrándolo en Ubuntu Server 20.04.

Cómo instalar netstat

Utilizaremos la herramienta netstat para averiguar qué direcciones IP están actualmente conectadas a tu servidor. Para instalar netstat en Ubuntu, en realidad debes instalar net-tools de la siguiente manera:

sudo apt-get install net-tools -y

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

Si estás utilizando CentOS u otra instalación basada en Red Hat, netstat debería estar instalado por defecto.

Cómo verificar la carga de tu servidor

Lo primero que vamos a hacer es comprobar la carga de nuestro servidor. El comando que usaremos para esto devolverá el número de procesadores lógicos (hilos). En un servidor, este número debería ser bastante bajo, pero depende de lo que esté en funcionamiento. Debes asegurarte de establecer un punto de referencia para este número cuando sepas que todo está bien. Si sospechas que algo está ocurriendo, vuelve a ejecutar el comando y compara los resultados.

Para verificar el número de procesadores lógicos, ejecuta el siguiente comando:

grep processor /proc/cpuinfo | wc -l

Si ese número es significativamente mayor que tu punto de referencia, es posible que tengas un problema.

Por ejemplo, en mi escritorio Pop!_OS, tengo 16 hilos, pero en un servidor Ubuntu que aloja Nextcloud, solo tengo dos. Si cualquiera de esos números se duplicara, es posible que esté sufriendo un ataque DDoS.

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

Cómo verificar la carga de tu red

A continuación, queremos verificar la carga de nuestra red. Existen varias herramientas que puedes utilizar para esto, pero yo elijo nload. Para instalar nload, ejecuta el siguiente comando:

sudo apt-get install nload -y

En CentOS, el comando sería similar a este:

sudo dnf install nload -y

Para ejecutar la herramienta, simplemente ejecuta el siguiente comando:

nload

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

Deberías ver una carga de red entrante y saliente bastante normal (Figura A).

Figura A

Si esa carga es considerablemente mayor de lo que debería ser, es posible que estés siendo atacado.

Cómo averiguar qué direcciones IP están conectadas a tu servidor

A continuación, querrás averiguar qué direcciones IP están conectadas a tu servidor. Para esto, utilizaremos nuevamente netstat de la siguiente manera:

netstat -ntu|awk '{print $5}'|cut -d: -f1 -s|sort|uniq -c|sort -nk1 -r

La salida del comando anterior enumerará cada dirección IP que esté conectada al servidor y cuántas instancias de cada una hay. Como puedes ver, en mi caso tengo dos direcciones IP conectadas a mi servidor (una tres veces) (Figura B).

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

Figura B

Asegúrate de revisar detenidamente esta lista. Si ves una dirección IP con un gran número de instancias (más de 100), es muy probable que sea la responsable. Una vez que estés seguro del culpable, puedes bloquear la dirección IP con el siguiente comando:

sudo route add ADDRESS reject

Donde ADDRESS es la dirección IP del sospechoso.

En este punto, vuelve a verificar tus hilos, las direcciones IP conectadas y las cargas de red para ver si has mitigado el ataque DoS. Si es así, es hora de informar la dirección IP sospechosa y, probablemente, prohibirla en tu red por completo. La próxima vez, te guiaré a través del proceso de mitigación de un ataque DDoS.

Suscríbete al canal de YouTube de Newsmatic's How To Make Tech Work para obtener los últimos consejos tecnológicos para profesionales empresariales por parte de Jack Wallen.

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

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 mitigar un ataque de denegación de servicio (DoS) en tu servidor 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.