iptables

Cómo utilizar tablas de IP para bloquear ICMP

Cómo utilizar tablas de IP para bloquear ICMP

El Protocolo de mensajes de control de Internet, también conocido como ICMP, es un protocolo que se utiliza para verificar la conectividad de los hosts en una red. También podemos utilizar este protocolo para diagnosticar los problemas en una red. Pero desde el punto de vista de la seguridad, también puede ser utilizado por alguien para realizar un ataque DDoS. Una inundación de ping o un ataque de denegación de servicio distribuido (DDoS) es una forma de ataque en la que alguien envía muchas solicitudes de ping a un host y el host se vuelve casi inaccesible para el tráfico de rutina. Para evitar este tipo de situación, los administradores de red suelen bloquear ICMP en su red. En este artículo, aprenderemos cómo se pueden usar las tablas de IP para bloquear ICMP en nuestro servidor.

¿Qué son las tablas de IP??

IP Tables es un programa de utilidad de firewall para sistemas operativos Linux. Se puede utilizar para aceptar, denegar o devolver el tráfico de red hacia o desde una fuente. Observa el tráfico de red venidero utilizando diferentes conjuntos de reglas definidas en una tabla. Estos conjuntos de reglas se llaman cadenas. Las tablas de IP observan paquetes de datos y los paquetes que coinciden con las reglas se dirigen a otra cadena o se les asigna uno de los siguientes valores.

Instalación de tablas de IP

Para la mayoría de las distribuciones de Linux, las tablas de IP vienen preinstaladas. Puede verificar si las tablas de IP están instaladas o no escribiendo el siguiente comando en la terminal.

[correo electrónico protegido]: ~ $ iptables --version

Si las tablas de IP no están instaladas, puede instalarlas ejecutando el siguiente comando en la terminal.

[correo electrónico protegido]: ~ $ sudo apt-get update
[correo electrónico protegido]: ~ $ sudo apt-get install iptables

Podemos verificar el estado predeterminado de las tablas de IP ejecutando el siguiente comando en la terminal.

[correo electrónico protegido]: ~ $ sudo iptables -L -v

La bandera '-L' enumera todas las reglas y la bandera '-v' muestra información detallada.

Alternativamente, también podemos enumerar todas las reglas agregadas a las tablas de IP ejecutando el siguiente comando en la terminal.

[correo electrónico protegido]: ~ $ sudo iptables -S

De forma predeterminada, todas las cadenas aceptan los paquetes y estas cadenas no tienen una regla asignada.

Asignar reglas a cadenas

Inicialmente, no se asigna ninguna regla a ninguna cadena y todas aceptan tráfico de red. Ahora, en esta sección, veremos cómo podemos definir reglas personalizadas para bloquear o permitir el tráfico de red. Para definir una nueva regla, usamos la bandera 'A' (agregar), que le dice a las tablas de IP que se va a definir una nueva regla. Las siguientes opciones también se utilizan junto con la bandera 'A' para describir la regla.

-I (interfaz): esta opción indica a través de qué interfaz desea que se permita o bloquee el tráfico de su red. Puede obtener una lista de todas las interfaces en su sistema ejecutando el siguiente comando en la terminal.

[correo electrónico protegido]: ~ $ ifconfig

-pag (protocolo): esta opción define qué protocolo desea filtrar utilizando tablas de IP. Puede ser TCP, UDP, ICMP, ICMPV6, etc. Puede aplicar reglas a todos los protocolos utilizando todas las opciones.

-s (fuente): esta opción muestra la fuente del tráfico de red, como la dirección IP o el nombre de dominio.

-dport (puerto de destino): esta opción se utiliza para indicar el puerto de destino para el tráfico de red.

-j (objetivo): esta opción se utiliza para mostrar el objetivo. Puede ser ACEPTAR, SOLTAR, RECHAZAR o DEVOLVER. Esta opción es obligatoria para todas las reglas.

En general, la sintaxis básica para agregar una regla será la siguiente:

[correo electrónico protegido]: ~ $ sudo iptables -A -I -j
-pag -dport -s

Bloqueo de ICMP mediante tablas de IP

Hasta ahora, tenemos un conocimiento básico de las tablas de IP y su uso para permitir o bloquear el tráfico en puertos específicos a través de interfaces específicas. Ahora, usaremos tablas de IP para bloquear ICMP en nuestro servidor.

El siguiente comando agregará una regla para bloquear ICMP en su máquina:

[correo electrónico protegido]: ~ $ sudo iptables -A INPUT -j REJECT -p icmp --icmp-type echo-request

Después de ejecutar el comando anterior, ahora verifique el estado de las tablas de IP.

[correo electrónico protegido]: ~ $ sudo iptables -L -v

Podemos ver que se ha agregado una regla a la cadena INPUT, que muestra que todo el tráfico ICMP será rechazado. Ahora, si hacemos ping a nuestro sistema desde cualquier otro sistema de la misma red, rechazará la solicitud. Podemos ver el resultado haciendo una solicitud de ping desde el localhost

[correo electrónico protegido]: ~ $ ping 127.0.0.1

Podemos ver que estamos recibiendo mensajes de rechazo del sistema si intentamos hacerle una solicitud de ping.

Alternativamente, los siguientes dos comandos se pueden usar para agregar reglas para bloquear ICMP en nuestro servidor.

[correo electrónico protegido]: ~ $ sudo iptables -A INPUT -p icmp -j DROP --icmp-type echo-request
[correo electrónico protegido]: ~ $ sudo iptables -A OUTPUT -p icmp -j DROP --icmp-type echo-reply

Después de agregar estas dos reglas, ahora verifique el estado de las tablas de IP.

[correo electrónico protegido]: ~ $ sudo iptables -L -v

Podemos ver que el comando anterior agregó dos reglas, una a la cadena INPUT y la otra a la cadena OUTPUT.

La diferencia entre DROP y REJECT es que cuando usamos REJECT, nos muestra una advertencia (Puerto de destino inaccesible) cuando hacemos ping porque la solicitud es rechazada y no llega al puerto. Por otro lado, cuando usamos un DROP, simplemente deja caer la salida. La entrada no se rechaza, se procesa, pero la salida no se muestra como se muestra a continuación

Conclusión

Los piratas informáticos adoptan diferentes métodos para realizar ataques distribuidos de denegación de servicio (DDoS) a los servidores. La inundación de ping también es una forma de ataque DDoS. Los piratas informáticos envían tantas solicitudes de ping al servidor que el servidor utiliza toda su potencia informática para procesar las solicitudes de ping y no realiza su procesamiento real. En este escenario o en varios otros escenarios, es posible que deba bloquear ICMP en su servidor.

En este artículo, hemos aprendido diferentes formas de bloquear ICMP usando tablas de IP. Discutimos cómo podemos agregar diferentes reglas para bloquear ICMP en nuestro servidor. De la misma forma, podemos utilizar tablas de IP para bloquear cualquier tipo de tráfico en cualquier puerto utilizando tablas de IP.

Cómo descargar y jugar Sid Meier's Civilization VI en Linux
Introducción al juego Civilization 6 es una versión moderna del concepto clásico introducido en la serie de juegos Age of Empires. La idea era bastant...
Cómo instalar y jugar a Doom en Linux
Introducción a Doom La serie Doom se originó en los años 90 después del lanzamiento del Doom original. Fue un éxito instantáneo y, desde ese momento e...
Vulkan para usuarios de Linux
Con cada nueva generación de tarjetas gráficas, vemos que los desarrolladores de juegos superan los límites de la fidelidad gráfica y se acercan un pa...