[Dr.WoW] [No.19] Servidor NAT

84 0 0 0

1 Mecanismo de servidor NAT

Las escuelas y las empresas pueden necesitar proporcionar servicios a usuarios externos. Los servidores que proporcionan dichos servicios usualmente usan direcciones privadas y los usuarios no pueden acceder a ellos en Internet. En este caso, ¿cómo podemos configurar el firewall como la puerta de enlace para resolver el problema?

Los lectores que han leído sobre NAT de origen deben haber pensado en NAT.

¡Bingo! Estás en la dirección correcta. Sin embargo, la fuente NAT funciona bien cuando los usuarios en una red privada necesitan acceder a Internet. Sin embargo, la situación es justo lo contrario aquí. El servidor en una red privada proporciona servicios, y los usuarios en Internet imitan el acceso al servidor. La dirección a traducir se cambia de la dirección de origen a la dirección de destino. Por lo tanto, nombramos esta implementación de servidor NAT.

Usemos la Figura 1-1 para ilustrar cómo configurar el servidor NAT en el firewall. El servidor NAT también necesita una dirección IP pública, al igual que en la fuente NAT. Sin embargo, no es necesario que coloque la dirección pública en un grupo de direcciones. Digamos que la dirección pública es 1.1.1.1 en este ejemplo.

 

NOTA

Si es posible, no utilice la dirección IP de la interfaz WAN en el firewall como la dirección pública para NAT. Si debe hacerlo, especifique el protocolo y el puerto durante la configuración del servidor NAT para evitar conflictos entre el servidor NAT y las funciones de administración, como Telnet y la interfaz web.

 

Figura 1-1 Red de servidores NAT

004117ayyytf22t24no02y.png

El servidor NAT está configurado de la siguiente manera:

1. Configurar el servidor NAT.

Ejecute el siguiente comando en el firewall para asignar la dirección privada (10.1.1.2) del servidor a una dirección pública (1.1.1.1).

[FW] nat server global 1.1.1.1 inside 10.1.1.2

Si se habilitan varios protocolos y puertos en el mismo servidor, esta configuración hará que todos los servicios sean accesibles para los usuarios en Internet, lo que conlleva riesgos de seguridad. Los firewalls de Huawei son compatibles con el servidor NAT específico del servicio, de modo que solo los servicios especificados son accesibles para los usuarios en Internet una vez que el servidor NAT está configurado. Por ejemplo, podemos asignar el puerto 80 al puerto 9980 para que accedan los usuarios de Internet.

NOTA

En este ejemplo, el puerto 80 se traduce al puerto 9980 en lugar del puerto 80 porque algunos operadores bloquearán los nuevos servicios en los puertos 80, 8000 y 8080.

 

[FW] nat server protocol tcp global 1.1.1.1 9980 inside 10.1.1.2 80

Una vez configurado el servidor NAT, se generarán las entradas del mapa del servidor. Sin embargo, a diferencia de la fuente NAT, las entradas del mapa del servidor en el servidor NAT son estáticas y no son activadas por paquetes. Las entradas se generarán automáticamente después de la configuración del servidor NAT y se eliminarán automáticamente una vez que se elimine la configuración del servidor NAT. Las entradas del mapa del servidor en el servidor NAT se parecen a la siguiente salida:

[FW] display firewall server-map

server-map item(s)

 ------------------------------------------------------------------------------

 Nat Server, any -> 1.1.1.1:9980[10.1.1.2:80], Zone: ---

   Protocol: tcp(Appro: unknown), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

 Nat Server Reverse10.1.1.2[1.1.1.1] -> any, Zone: ---

   Protocol: any(Appro: ---), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

Al igual que el triplete NAT, el servidor NAT también genera dos entradas de mapa de servidor:

Reenviar la entrada del mapa del servidor

"Nat Server, any -> 1.1.1.1:9980[10.1.1.2:80]" es la entrada de mapa de servidor hacia adelante, que registra la asignación entre la dirección/puerto privado y la dirección/puerto público. "[10.1.1.2:80]" es la dirección privada y el puerto del servidor, y 1.1.1.1:9980 es la dirección pública y el puerto. Si traducimos la entrada a palabras humanas, es: cuando un cliente inicia una conexión a 1.1.1.1:9980, la dirección de destino y el puerto se traducirán a 10.1.1.2:80.

Esta entrada se utiliza para traducir la dirección de destino y el puerto de paquetes destinados desde Internet al servidor.

Devolver la entrada del mapa del servidor

"Nat Server Reverse, 10.1.1.2 [1.1.1.1] -> any" es la entrada de retorno del mapa del servidor. Se utiliza para traducir la dirección de origen privada en una dirección pública cuando el servidor inicia el acceso a Internet sin usar una política de NAT de origen. Esta es la mejor parte del servidor NAT, porque puede usar un comando para configurar NAT en ambas direcciones entre el servidor e Internet.

Aquí la palabra "traducir" aparece varias veces. Sí. Las entradas son solo traducción de direcciones, ya sea en la dirección de avance o de retorno. No son como las entradas de mapa de servidor en ASPF. En ASPF, las entradas del mapa del servidor pueden crear un canal que puede pasar por alto las políticas de seguridad. Por lo tanto, en el servidor NAT, debe configurar las políticas de seguridad para permitir el tráfico en ambas direcciones entre el servidor privado e Internet.

2. Configure una política de seguridad.

Ahora viene una pregunta típica hecha por miles de personas: para permitir que los usuarios en Internet accedan al servidor privado en la configuración del servidor NAT, ¿la dirección de destino en la política de seguridad es la dirección privada o pública? Antes de responder a esta pregunta, primero echemos un vistazo a cómo el firewall procesa los paquetes destinados de los usuarios de Internet al servidor privado.

Cuando un usuario inicia el acceso a 1.1.1.1:9980 (el servidor privado), el firewall comprueba si el paquete coincide con una entrada de mapa de servidor. Si se encuentra una coincidencia, el firewall traduce la dirección y el puerto de destino a 10.1.1.2:80. Luego, el firewall busca una interfaz saliente para la dirección de destino 10.1.1.2. Luego, el firewall comprueba las zonas de seguridad donde residen las interfaces entrantes y salientes para determinar la política de seguridad interzonal. Por lo tanto, la dirección de destino en la política de seguridad debe ser la dirección privada, no la dirección pública asignada a la dirección privada del servidor. Por lo tanto, la política de seguridad para este ejemplo debe ser:

[FW] policy interzone dmz untrust inbound

[FW-policy-interzone-dmz-untrust-inbound] policy 1

[FW-policy-interzone-dmz-untrust-inbound-1] policy destination 10.1.1.2 0

[FW-policy-interzone-dmz-untrust-inbound-1] policy service service-set http

[FW-policy-interzone-dmz-untrust-inbound-1] action permit

[FW-policy-interzone-dmz-untrust-inbound-1] quit

[FW-policy-interzone-trust-untrust-outbound] quit

 

Si el paquete está permitido por las políticas de seguridad, el firewall crea la siguiente sesión y reenvía el paquete al servidor privado.

[FW] display firewall session table

 Current Total Sessions : 1

  http VPN:public --> public 1.1.1.2:2049-->1.1.1.1:9980[10.1.1.2:80]

 

Al recibir el paquete, el firewall responde al paquete. Una vez que el paquete de respuesta llega al firewall y coincide con la tabla de sesión, el firewall traduce la dirección de origen y el puerto del paquete a 1.1.1.1:9980 y reenvía el paquete a Internet. Cuando los paquetes subsiguientes entre el usuario y el servidor privado llegan al servidor de seguridad, el servidor de seguridad traduce la dirección y el puerto según la tabla de la sesión, no la entrada del mapa del servidor.

Las capturas de paquetes antes y después de NAT muestran los resultados del servidor NAT:

·         Se traducen la dirección de destino y el puerto de paquetes destinados desde el usuario en Internet al servidor privado.

004139f3bp6iv8et738iev.png

·         Se traducen la dirección de origen y el puerto de paquetes destinados desde el servidor privado al usuario en Internet.

004149i7kllfnfkzqkls66.png

3. Configure una ruta de agujero negro.

Para evitar los bucles de enrutamiento, se debe configurar una ruta de agujero negro para el servidor NAT.

[FW] ip route-static 1.1.1.1 32 NULL 0

2 NAT Server in Multi-Egress Scenario

Similar a la fuente NAT, el servidor NAT también necesita abordar el escenario de egreso múltiple. Como se muestra en el siguiente ejemplo, el firewall tiene dos enlaces ISP. El servidor NAT está configurado de la siguiente manera:

1. Configurar el servidor NAT.

Como se muestra en la Figura 1-2, una empresa ha implementado un firewall en la salida de la red como la puerta de enlace, que está conectada a Internet a través de los enlaces ISP1 e ISP2 para que los usuarios de Internet puedan acceder al servidor en la red privada.

Figura 1-2 Red de servidores NAT en el escenario de ISP dual

004200t9d0502p2z977npq.png

Como puerta de enlace de egreso, el firewall está conectado a dos ISP. Por lo tanto, la configuración del servidor NAT se divide en dos partes para que el servidor privado pueda proporcionar servicios a través de direcciones públicas obtenidas de ambos ISP. Hay dos métodos disponibles:

Método 1: agregue las interfaces WAN conectadas a los dos ISP a diferentes zonas de seguridad y especifique el parámetro de zona durante la configuración del servidor NAT. De esta manera, el servidor puede anunciar diferentes direcciones IP públicas a diferentes zonas de seguridad, como se muestra en la Figura 1-3.

Figura 1-3 Red de servidores NAT en el escenario de ISP dual (interfaces WAN en diferentes zonas de seguridad)

004210bl1kxz772lj3d51x.png

En el siguiente ejemplo, la dirección pública anunciada a ISP1 es 1.1.1.20 y la anunciada a ISP2 es 2.2.2.20.

Agregar interfaces a las zonas de seguridad.

[FW] firewall zone dmz

[FW-zone-dmz] add interface GigabitEthernet1/0/4

[FW-zone-dmz] quit

[FW] firewall zone name isp1

[FW-zone-isp1] set priority 10

[FW-zone-isp1] add interface GigabitEthernet1/0/2

[FW-zone-isp1] quit

[FW] firewall zone name isp2

[FW-zone-isp2] set priority 20

[FW-zone-isp2] add interface GigabitEthernet1/0/3

[FW-zone-isp2] quit

 

Configure el servidor NAT con el parámetro de zona especificado.

[FW] nat server zone isp1 protocol tcp global 1.1.1.20 9980 inside 172.16.0.2 80

[FW] nat server zone isp2 protocol tcp global 2.2.2.20 9980 inside 172.16.0.2 80

 

Configure dos políticas de seguridad basadas en la relación entre zonas.

[FW] policy interzone isp1 dmz inbound

[FW-policy-interzone-dmz-isp1-inbound] policy 1

[FW-policy-interzone-dmz-isp1-inbound-1] policy destination 172.16.0.2 0

[FW-policy-interzone-dmz-isp1-inbound-1] policy service service-set http

[FW-policy-interzone-dmz-isp1-inbound-1] action permit

[FW-policy-interzone-dmz-isp1-inbound-1] quit

[FW-policy-interzone-dmz-isp1-inbound] quit

[FW] policy interzone isp2 dmz inbound

[FW-policy-interzone-dmz-isp2-inbound] policy 1

[FW-policy-interzone-dmz-isp2-inbound-1] policy destination 172.16.0.2 0

[FW-policy-interzone-dmz-isp2-inbound-1] policy service service-set http

[FW-policy-interzone-dmz-isp2-inbound-1] action permit

[FW-policy-interzone-dmz-isp2-inbound-1] quit

[FW-policy-interzone-dmz-isp2-inbound] quit

 

Por supuesto, no te olvides de las rutas de agujero negro.

[FW] ip route-static 1.1.1.20 32 NULL 0

[FW] ip route-static 2.2.2.20 32 NULL 0

After the configuration, the following server-map entries are generated on the firewall.

[FW] display firewall server-map

server-map item(s)

 ------------------------------------------------------------------------------

Nat Server, any -> 1.1.1.20:9980[172.16.0.2:80], Zone: isp1

   Protocol: tcp(Appro: unknown), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

 Nat Server Reverse, 172.16.0.2[1.1.1.20] -> any, Zone: isp1

   Protocol: any(Appro: ---), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

 Nat Server, any -> 2.2.2.20:9980[172.16.0.2:80], Zone: isp2

   Protocol: tcp(Appro: unknown), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

 Nat Server Reverse, 172.16.0.2[2.2.2.20] -> any, Zone: isp2

   Protocol: any(Appro: ---), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

Podemos ver que se generan tanto las entradas del mapa del servidor hacia adelante como las de retorno. Las entradas de mapa de servidor hacia adelante permiten a los usuarios de Internet acceder al servidor privado, y las entradas de mapa de servidor de retorno permiten que el servidor privado inicie el acceso a Internet.

Por lo tanto, le recomendamos que agregue las interfaces WAN conectadas a ISP1 e ISP2 a diferentes zonas de seguridad y configure el servidor NAT con el parámetro de zona especificado. Si las dos interfaces se han agregado a la misma zona y no se pueden cambiar, hay otra manera.

Método 2: especifique el parámetro sin retroceso durante la configuración del servidor NAT para que el servidor pueda anunciar dos direcciones IP públicas, como se muestra en la Figura 1-4.

Figura 1-4 Red de servidores NAT en el escenario de ISP dual (interfaces WAN en la misma zona de seguridad)

004227fytlh9wk11sluet8.png

En este escenario, se debe especificar el parámetro no-reverse para garantizar el funcionamiento del servidor NAT. El siguiente ejemplo ilustra la configuración del servidor NAT. Algunas configuraciones son las mismas que en el método 1 y, por lo tanto, se omiten.

Configure el servidor NAT con el parámetro no-reverse especificado.

[FW] nat server protocol tcp global 1.1.1.20 9980 inside 172.16.0.2 80 no-reverse

[FW] nat server protocol tcp global 2.2.2.20 9980 inside 172.16.0.2 80 no-reverse

 

Después de la configuración, las siguientes entradas del mapa del servidor se generan en el firewall.

[FW] display firewall server-map

server-map item(s)

 ------------------------------------------------------------------------------

Nat Server, any -> 1.1.1.20:9980[172.16.0.2:80], Zone: ---

   Protocol: tcp(Appro: unknown), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

 Nat Server, any -> 2.2.2.20:9980[172.16.0.2:80], Zone: ---

   Protocol: tcp(Appro: unknown), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

Podemos ver que solo se generan las entradas de mapa de servidor hacia adelante para permitir que los usuarios en Internet accedan al servidor privado. Sin embargo, para permitir que el servidor privado inicie el acceso a Internet, debe configurar una política NAT en la interzona Trust-to-Untrust.

Puede preguntar si no especificamos el parámetro sin retroceso y configuramos dos entradas de servidor NAT. La respuesta es que los dos comandos del servidor NAT no se pueden entregar si no especificamos el parámetro.

[FW] nat server protocol tcp global 1.1.1.20 9980 inside 172.16.0.2 80

[FW] nat server protocol tcp global 2.2.2.20 9980 inside 172.16.0.2 80

  Error: This inside address has been used!

 

Vamos a ver qué pasará si los dos comandos pueden ser entregados. Ejecutemos un comando en un firewall y el otro comando en el otro firewall y verifiquemos las entradas del mapa del servidor en los dos firewalls.

[FW1] nat server protocol tcp global 1.1.1.20 9980 inside 172.16.0.2 80

[FW1] display firewall server-map

server-map item(s)

 ------------------------------------------------------------------------------

Nat Server, any -> 1.1.1.20:9980[172.16.0.2:80], Zone: ---

   Protocol: tcp(Appro: unknown), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

 Nat Server Reverse172.16.0.2[1.1.1.20] -> any, Zone: ---

   Protocol: any(Appro: ---), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

[FW2] nat server 1 global 2.2.2.20 inside 172.16.0.2

[FW2] display firewall server-map

server-map item(s)

 ------------------------------------------------------------------------------

 Nat Server, any -> 2.2.2.20:9980[172.16.0.2:80], Zone: ---

   Protocol: tcp(Appro: unknown), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

 Nat Server Reverse172.16.0.2[2.2.2.20] -> any, Zone: ---

   Protocol: any(Appro: ---), Left-Time: --:--:--, Addr-Pool: ---

   VPN: public -> public

 

Podemos ver que la entrada de retorno del mapa del servidor en un servidor de seguridad traduce la dirección de origen 172.16.0.2 a 1.1.1.20, y que en el otro servidor de seguridad traduce la dirección de origen 172.16.0.2 a 2.2.2.20. Si las dos entradas de retorno del mapa del servidor aparecen en el mismo firewall, ¿qué sucederá? El firewall debe traducir la dirección de origen 172.16.0.2 a 1.1.1.20 y 2.2.2.20. Entonces, el firewall no sabe qué hacer. Ese es el problema si no especificamos el parámetro no-reverse en el comando del servidor nat. Si se especifica el parámetro no-reverse, las entradas de retorno del mapa del servidor no se generarán, y este problema no se producirá.

2. Configure la función de equilibrio de carga adhesiva.

Hemos aprendido cómo determinar si se debe especificar la zona o el parámetro sin retroceso en función de si las interfaces WAN conectadas a ISP1 e ISP2 se agregan a la misma zona de seguridad. Sin embargo, debemos considerar más que eso en el escenario de ISP dual. También debemos considerar qué ISP se utilizará para acceder al servidor privado.

Por ejemplo, si los usuarios en la red ISP1 acceden al servidor privado a través de la dirección pública asignada por ISP2, la ruta es un desvío. Además, los dos ISP pueden no estar conectados entre sí. Como resultado, la conexión será lenta o incluso no estará disponible.

Por lo tanto, debemos evitar tales situaciones para garantizar que la dirección pública anunciada para los usuarios en la red ISP1 sea la dirección pública obtenida de ISP1 y que para los usuarios en la red ISP2 sea la dirección pública obtenida de ISP2.

Además, cuando el firewall procesa los paquetes devueltos desde el servidor privado, también puede ocurrir este problema. Como se muestra en la Figura 1-5, los usuarios de la red ISP1 acceden al servidor privado a través de la dirección pública obtenida de ISP1, y los paquetes se reciben en GE1/0/2. Cuando los paquetes devueltos del servidor privado llegan al servidor de seguridad, aunque los paquetes coinciden con la tabla de la sesión y se realiza NAT, el servidor de seguridad debe determinar la interfaz de salida en función de la dirección de destino. Si el servidor de seguridad tiene una ruta predeterminada pero no tiene una ruta específica para el usuario en Internet, los paquetes devueltos pueden reenviarse a través de GE1/0/3, que está conectado a la red ISP2. Es posible que los paquetes transmitidos a través de la red ISP2 no puedan llegar a la red ISP1.

Figura 1-5 Tráfico de servidor NAT interrumpido porque los paquetes de reenvío y retorno no pasan a través de la misma interfaz de firewall

004246ggyobxvjig2a2s71.png

  Para resolver este problema, podemos configurar rutas a los usuarios en las redes ISP1 e ISP2. Sin embargo, las redes ISP1 e ISP2 tienen un gran número de redes, y la configuración manual no es pragmática. Para resolver este problema, el firewall proporciona la función de equilibrio de carga fija, lo que significa que los paquetes recuperan la misma ruta, sin depender de la tabla de enrutamiento para determinar la interfaz de salida.

La función de equilibrio de carga adhesiva debe configurarse en ambas interfaces de firewall conectadas a las redes ISP1 e ISP2. Los siguientes comandos se utilizan para habilitar el equilibrio de carga fijo en GE1 / 0/2. En este ejemplo, el siguiente salto en ISP1 es 1.1.1.254. Los comandos están disponibles en la serie USG9500.

[FW] interface GigabitEthernet 1/0/2

[FW-GigabitEthernet1/0/2] redirect-reverse nexthop 1.1.1.254

For USG2000 or USG5000 series, the commands are:

[FW] interface GigabitEthernet 1/0/2

[FW-GigabitEthernet1/0/2] reverse-route nexthop 1.1.1.254

 

Para la serie USG6000, los comandos son:

[FW] interface GigabitEthernet 1/0/2

[FW-GigabitEthernet1/0/2] gateway 1.1.1.254

[FW-GigabitEthernet1/0/2] reverse-route enable

 

Para ver la lista de todas las publicaciones técnicas de Dr. WoW, haga clic aquí.


  • x
  • convención:

Responder

Responder
Debe iniciar sesión para responder la publicación Inicio de sesi | Registrarse

Aviso: Para garantizar sus legítimos derechos e intereses, la comunidad y los terceros no publicarán contenido que pueda generar riesgos legales a las partes, por ejemplo, pornografía, contenido político, contenido sobre juego, consumo y tráfico de drogas, así como contenido que viole los derechos de propiedad intelectual de terceros, por ejemplo, secretos comerciales, marcas, derechos de autor, patentes y privacidad personal. No comparta su cuenta ni su contraseña con terceros. Todas las operaciones realizadas usando su cuenta se considerarán como sus acciones y todas las consecuencias que estas acciones generen serán responsabilidad suya. Para obtener información detallada, consulte la “ Política de privacidad.”
Si el botón para adjuntar no está disponible, actualice Adobe Flash Player con la versión más reciente

¡Ingresa y disfruta de todos los beneficios para los miembros!

Aterrizaje
Respuesta rápida Desplácese hasta arriba