Cómo realizar el filtrado de paquetes, la traducción de direcciones de red y configurar los parámetros de tiempo de ejecución del kernel-Parte 2

Cómo realizar el filtrado de paquetes, la traducción de direcciones de red y configurar los parámetros de tiempo de ejecución del kernel-Parte 2

Como se prometió en la Parte 1. (“Configurar el enrutamiento de red estático”), en este artículo ( Parte 2. de la serie RHCE. comience presentando los principios de filtrado de paquetes y traducción de direcciones de red (NAT) en Red Hat Enterprise Linux 7. antes de sumergirse en la configuración de los parámetros del kernel en tiempo de ejecución para modificar el comportamiento de un kernel en ejecución si ciertas condiciones cambian o necesitan surgir.

 Filtrado de paquetes de red en RHEL Filtrado de paquetes de red en RHEL RHCE: Filtrado de paquetes de red-Parte 2

Filtrado de paquetes de red en RHEL 7

Cuando hablamos de filtrado de paquetes, nos referimos a un proceso realizado por un cortafuegos en el que lee el encabezado de cada paquete de datos que intenta atravesarlo. Luego, filtra el paquete tomando la acción requerida según las reglas que han sido definidas previamente por el administrador del sistema.

Como probablemente sepa, comenzando con RHEL 7. el valor predeterminado el servicio que gestiona las reglas del cortafuegos es firewalld. Como iptables, habla con el módulo netfilter en el kernel de Linux para examinar y manipular paquetes de red. A diferencia de iptables, las actualizaciones pueden tener efecto inmediatamente sin interrumpir las conexiones activas; ni siquiera tienes que reiniciar el servicio.

Otra ventaja de firewalld. es que nos permite definir reglas basado en nombres de servicios preconfigurados (más sobre eso en un minuto).

En la Parte 1. usamos el siguiente escenario:

 Diagrama de red de enrutamiento estático  Static Routing Network Diagram Diagrama de red de enrutamiento estático freestar.config.enabled_slots.push (LocationName:” tecmint_incontent “, slotId:” tecmint_incontent “);

Sin embargo, recordará que inhabilitamos el firewall en el enrutador n. ° 2. para simplificar el ejemplo, ya que aún no habíamos cubierto el filtrado de paquetes. Veamos ahora cómo podemos habilitar los paquetes entrantes destinados a un servicio o puerto específico en el destino.

Primero, agreguemos una regla permanente para permitir el tráfico entrante en enp0s3. ( 192.168.0.19. a enp0s8. ( 10.0.0.18. :

# firewall-cmd–permanent–direct–add-rule filtro ipv4 FORWARD 0-i enp0s3-o enp0s8-j ACCEPT

El comando anterior guardará la regla en /etc/firewalld/direct.xml.

# cat/etc/firewalld/direct.xml  Verifique las reglas guardadas de Firewalld en CentOS 7  Verifique las reglas guardadas de Firewalld en CentOS 7 Verifique las reglas guardadas de Firewalld

Luego habilite la regla para que surta efecto inmediatamente:

# firewall-cmd–direct–add-rule ipv4 filter FORWARD 0-i enp0s3-o enp0s8-j ACEPTAR

Ahora puede hacer telnet al servidor web desde el cuadro RHEL 7. y ejecutar tcpdump nuevamente para monitorear el tráfico TCP entre las dos máquinas, esta vez con el firewall en enrutador # 2. habilitado.

# telnet 10.0.0.20 80 # tcpdump-qnnvvv-i enp0s3 host 10.0.0.20

¿Qué sucede si solo desea permitir conexiones entrantes a la web? servidor ( puerto 80. de 192.168.0.18. y bloquear conexiones de otras fuentes en la red 192.168.0.0/24.

En el firewall del servidor web, agregue las siguientes reglas:

# firewall-cmd–add-rich-rule ‘rule family = “ipv4” source address = “192.168.0.18/24” service name = “http “accept ‘# firewall-cmd–add-rich-rule’ rule family =” ipv4 “dirección de origen =” 192.168.0.18/24 “servicio n ame = “http” accept ‘–permanent # firewall-cmd–add-rich-rule’ familia de reglas = “ipv4” dirección de origen = “192.168.0.0/24” nombre del servicio = “http” drop ‘# firewall-cmd–add-rich-rule ‘rule family = “ipv4” source address = “192.168.0.0/24” service name = “http” drop’–permanent

Ahora puede realizar solicitudes HTTP al servidor web, desde 192.168.0.18. y desde alguna otra máquina en 192.168.0.0/24. En el primer caso, la conexión debería completarse con éxito, mientras que en el segundo eventualmente se agotará el tiempo de espera.

Para hacerlo, cualquiera de los siguientes comandos funcionará:

# telnet 10.0.0.20 80 # wget 10.0.0.20

Le recomiendo encarecidamente que consulte la documentación de Firewalld Rich Language en el Wiki del proyecto Fedora para obtener más detalles sobre las reglas enriquecidas.

Traducción de direcciones de red en RHEL 7

Traducción de direcciones de red. ( NAT. es el proceso en el que a un grupo de equipos (también puede ser solo uno de ellos) en una red privada se les asigna una IP pública única habla a. Como resultado, todavía se identifican de forma única por su propia dirección IP privada dentro de la red, pero en el exterior todos “parecen” iguales.