Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Descripción general de ALG

Una puerta de enlace de capa de aplicación (ALG) permite que la puerta de enlace analice las cargas de la capa de aplicación y tome decisiones sobre si permitir o denegar tráfico al servidor de aplicaciones. Las ALG admiten las aplicaciones, como el protocolo de transferencia (FTP) y varios protocolos IP que utilizan la carga de capa de aplicación para comunicar los puertos del Protocolo de control de transmisión dinámica (TCP) o el protocolo de datagramas de usuario (UDP) en los que las aplicaciones abren conexiones de datos.

Descripción general de ALG

Una puerta de enlace de capa de aplicación (ALG) es un componente de software que está diseñado para administrar protocolos específicos, como el protocolo de iniciación de sesión (SIP) o FTP en dispositivos de Juniper Networks que ejecutan Junos OS. El módulo ALG es responsable del procesamiento de paquetes conscientes de la capa de aplicación en conmutadores.

La funcionalidad de ALG puede activarse mediante un servicio o una aplicación configurados en la política de seguridad:

  • Un servicio es un objeto que identifica un protocolo de aplicación mediante información de capa 4 (como números de puerto TCP y UDP estándar y aceptados) para un servicio de aplicación (como Telnet, FTP y SMTP).

  • Una aplicación especifica la aplicación de capa 7 que se asigna a un servicio de capa 4.

Un servicio predefinido ya tiene una asignación a una aplicación de capa 7. Sin embargo, para los servicios personalizados, debe vincular el servicio a una aplicación explícitamente, especialmente si desea que la política aplique una ALG.

Las ALG para paquetes destinados a puertos conocidos se activan por tipo de servicio. ALG intercepta y analiza el tráfico especificado, asigna recursos y define políticas dinámicas para permitir que el tráfico pase de forma segura por el dispositivo:

  1. Cuando un paquete llega al dispositivo, el módulo de flujo reenvía el paquete de acuerdo con la regla de seguridad establecida en la política.

  2. Si se encuentra una política para permitir el paquete, se asigna el tipo de servicio asociado o tipo de aplicación y se crea una sesión para este tipo de tráfico.

  3. Si se encuentra una sesión para el paquete, no se necesita ninguna coincidencia de regla de política. El módulo ALG se activa si ese tipo de servicio o aplicación en particular requiere el procesamiento ALG compatible.

El ALG también inspecciona el paquete para la dirección IP incrustada y la información de puerto en la carga del paquete, y realiza el procesamiento de traducción de direcciones de red (TDR) si es necesario. Un búfer de mensaje solo se asigna cuando el paquete está listo para procesar. El búfer se libera después de que el paquete completa el manejo de ALG, incluida la modificación de la carga, la realización de TDR, la apertura de una nueva conexión entre un cliente y un servidor, y la transferencia de datos entre un cliente y un servidor ubicado en lados opuestos de un dispositivo de Juniper Networks

El tamaño máximo del jbuf es de 9 Kb. Si el tamaño del búfer de mensaje es más de 9 Kb, no se puede transferir todo el mensaje al controlador de paquetes ALG. Esto hace que los paquetes posteriores en la sesión omitan el manejo de ALG, lo que da como resultado un error de transacción. La optimización del búfer de mensajes ALG se mejora para reducir el alto consumo de memoria.

El ALG también abre una puerta para la dirección IP y el número de puerto para permitir el intercambio de datos para las sesiones de control y datos. La sesión de control y la sesión de datos se pueden asociar para tener el mismo valor de tiempo de espera, o pueden ser independientes.

Las ALG se admiten en los clústeres de chasis.

Descripción de los servicios personalizados de ALG

De forma predeterminada, las ALG están vinculadas a servicios predefinidos. Por ejemplo, el FTP ALG está vinculado a junos-ftp, el ALG RTSP está vinculado a junos-rtsp, y así sucesivamente.

Un servicio predefinido ya tiene una asignación a una aplicación de capa 7. Sin embargo, para los servicios personalizados, debe vincular el servicio a una aplicación explícitamente, especialmente si desea que la política aplique una ALG.

Cuando aplique servicios predefinidos a su política, el tráfico que coincida con el servicio se enviará a su ALG correspondiente para su posterior procesamiento. Sin embargo, en algunas circunstancias, es posible que deba definir servicios personalizados para lograr lo siguiente:

  • Utilice el controlador ALG para procesar tráfico especial, con protocolos especificados por el cliente, puertos de destino, etc.

  • Permita el tráfico, pero evite el procesamiento de ALG, cuando el tráfico coincide con los servicios predefinidos que se enlazan con ALG.

  • Agregue más aplicaciones al conjunto de aplicaciones de ALG actual.

El siguiente ejemplo requiere que navegue por varios niveles en la jerarquía de configuración. Para obtener instrucciones sobre cómo hacerlo, consulte Uso del editor de CLI en modo de configuración en la Guía del usuario de CLI.

Los tres usos de servicios personalizados se ilustran a continuación, considerando MS-RPC ALG como ejemplo:

  • Utilize the ALG handler to process special traffic:

    El tráfico con el puerto de destino TCP 6000 se enviará a MS-RPC ALG para su procesamiento posterior.

  • Permit traffic but bypass ALG processing:

    El tráfico con el puerto de destino TCP 135 ignorará todas las ALG.

  • Add more applications to an ALG’s application set—Para agregar aplicaciones como los servicios MS-RPC o Sun, que no están predefinidos en los dispositivos:

    Se permitirá el tráfico de datos de MS-RPC con TCP, uuid e3514235-4b06-11d1-ab04-00c04fc2dcd2, cuando se aplica custom-msrpc a la política junto con otras aplicaciones predefinidas de junos-ms-rpc**.

Descripción del ALG DNS IPv6 para enrutamiento, TDR y NAT-PT

El sistema de nombres de dominio (DNS) es la parte de la ALG que controla el tráfico DNS, monitorea los paquetes de consultas y respuestas DNS, y cierra la sesión si la marca DNS indica que el paquete es un mensaje de respuesta.

DNS ALG admite IPv4 en modo de ruta para Junos OS versión 10.0 y versiones anteriores. En la versión 10.4 de Junos OS, esta función implementa la compatibilidad con IPv6 en el DNS ALG para el enrutamiento, la traducción de direcciones de red (TDR) y la traducción de protocolo de dirección de red (NAT-PT).

Cuando el ALG DNS recibe una consulta DNS del cliente DNS, se realiza una comprobación de seguridad en el paquete DNS. Cuando el ALG DNS recibe una respuesta DNS del servidor DNS, se realiza una comprobación de seguridad similar y, a continuación, se cierra la sesión para el tráfico DNS.

Tráfico ALG DNS IPv6 en modo TDR

TDR IPv6 proporciona traducción de direcciones entre dispositivos de red dirigidos IPv4 e IPv6. También proporciona traducción de direcciones entre hosts IPv6. La TDR entre hosts IPv6 se realiza de manera similar y con fines similares a los de IPv4 NAT.

Cuando el tráfico DNS funciona en modo TDR, la ALG DNS traduce la dirección pública en una respuesta DNS a una dirección privada cuando el cliente DNS está en una red privada y, de manera similar, traduce una dirección privada a una dirección pública cuando el cliente DNS está en una red pública.

En la versión 10.4 de Junos OS, IPv6 NAT admite:

  • Traducciones TDR fuente

  • Asignaciones TDR de destino

  • Asignaciones TDR estáticas

Nota:

El ALG TDR DE DNS IPv6 solo admite la asignación TDR estática.

Tráfico ALG DNS IPv6 en modo NAT-PT

El NAT-PT IPv6 proporciona asignación de direcciones y traducción de protocolo entre dispositivos de red dirigidos IPv4 e IPv6. El proceso de traducción se basa en el método de traducción IP/ICMP (SIIT) sin estado; sin embargo, el estado y el contexto de cada comunicación se conservan durante la duración de la sesión. El NAT-PT IPv6 admite paquetes de protocolo de mensajes de control de Internet (ICMP), protocolo de control de transmisión (TCP) y protocolo de datagramas de usuario (UDP).

IPv6 NAT-PT admite los siguientes tipos de NAT-PT:

  • TDR-PT tradicional

  • TDR-PT bidireccional

Un mecanismo basado en DNS asigna dinámicamente direcciones IPv6 a servidores solo IPv4. NAT-PT usa el DNS ALG para hacer las traducciones de forma transparente.

Por ejemplo, una empresa que use una red IPv6 interna debe poder comunicarse con servidores IPv4 externos que no tengan direcciones IPv6.

Para admitir el enlace de dirección dinámica, se debe usar un DNS para la resolución de nombres. El host IPv4 busca el nombre del nodo IPv6 en su servidor DNS IPv4 configurado localmente, el cual, a continuación, pasa la consulta al servidor DNS IPv6 a través del dispositivo mediante NAT-PT.

Cuando el tráfico DNS funciona en modo NAT-PT, el ALG DNS traduce la dirección IP en un paquete de respuesta DNS entre la dirección IPv4 y la dirección IPv6 cuando el cliente DNS está en una red IPv6 y el servidor está en una red IPv4, y viceversa.

Nota:

En el modo NAT-PT, solo se admite la traducción de direcciones IPV4 a IPV6 en el ALG DNS. Para admitir el modo NAT-PT en un DNS ALG, el módulo TDR debe admitir NAT-PT.

Cuando el ALG DNS recibe una consulta DNS del cliente DNS, la ALG DNS realiza las siguientes comprobaciones de seguridad y cordura en los paquetes DNS:

  • Aplica la longitud máxima del mensaje DNS (el valor predeterminado es de 512 bytes y la longitud máxima es de 8KB)

  • Aplica una longitud de nombre de dominio de 255 bytes y una longitud de etiqueta de 63 bytes

  • Verifica la integridad del nombre de dominio al que hace referencia el puntero si se encuentran punteros de compresión en el mensaje DNS

  • Comprueba si existe un bucle de puntero de compresión

Se realizan comprobaciones de cordura similares cuando el ALG DNS recibe una respuesta DNS del servidor DNS, después de lo cual se cierra la sesión para este tráfico DNS.

Descripción de la compatibilidad con IPv6 en FTP ALG

El protocolo de transferencia de archivos (FTP) es la parte de ALG que maneja el tráfico FTP. Las solicitudes PORT/PASV y las respuestas 200/227 correspondientes en FTP se utilizan para anunciar el puerto TCP, que el host escucha para la conexión de datos FTP.

Los comandos EPRT/EPSV/229 se utilizan para estas solicitudes y respuestas. FTP ALG ya admite EPRT/EPSV/229, pero solo para direcciones IPv4.

En la versión 10.4 de Junos OS, los comandos EPRT/EPSV/229 se actualizaron para admitir direcciones IPv4 e IPv6.

FTP ALG utiliza objcache preasignado para almacenar sus cookies de sesión. Cuando se admiten ambas direcciones IPv4 e IPv6 en FTP ALG, la estructura de la cookie de sesión se ampliará en 256 bits (32 bytes) para almacenar la dirección IPv6.

Compatibilidad con ALG FTP para IPv6

El FTP ALG monitorea los comandos y las respuestas en el canal de control FTP para la corrección sintáctica y abre los agujeros de pin correspondientes para permitir que se establezcan conexiones del canal de datos. En la versión 10.4 de Junos OS, el FTP ALG solo admite el enrutamiento IPv4, el enrutamiento IPv6 y el modo TDR. En junos OS versión 11.2 y versiones posteriores, FTP ALG también admite los modos TDR IPv6 y NAT-PT.

Modo EPRT

El comando EPRT permite la especificación de una dirección extendida para la conexión de datos. La dirección extendida debe estar compuesta por el protocolo de red, así como por las direcciones de red y de transporte.

El formato de EPRT es:

EPRT<space><d><net-prt><d><net-addr><d><tcp-port><d>

  • <net-prt>: número de familia de direcciones definido por IANA

  • <net-addr>: una cadena de protocolo específica de la dirección de red

  • puerto <tcp>: Un número de puerto TCP

Los siguientes son comandos EPRT de ejemplo para IPv6:

EPRT |2|1080::8:800:200C:417A|5282|

En este modo, FTP ALG se enfoca solo en el comando EPRT; extrae la dirección IPv6 y el puerto del comando EPRT y abre el agujero de pines.

Modo EPSV

El comando EPSV solicita que un servidor esté escuchando en un puerto de datos y esperando una conexión. La respuesta a este comando solo incluye el número de puerto TCP de la conexión de escucha.

A continuación se muestra una cadena de respuesta de ejemplo:

Nota:

El código de respuesta para entrar en modo pasivo con una dirección extendida debe ser 229. Debe extraer el puerto TCP en 229 cargas y usarlo para abrir el orificio.

Descripción de la compatibilidad del modo TAP para ALG

El modo de punto de acceso de terminal (TAP) es un dispositivo en espera que comprueba el tráfico reflejado mediante el conmutador. El modo TAP no depende del estado de ALG habilitado o deshabilitado. La configuración alg sigue siendo la misma que la del modo sin TAP.

Cuando configura un dispositivo de la serie SRX para que funcione en modo TAP, el dispositivo genera información de registro de seguridad para mostrar la información de las amenazas detectadas, el uso de la aplicación y los detalles del usuario. Cuando el dispositivo está configurado para funcionar en modo TAP, el dispositivo recibe paquetes solo de la interfaz TAP configurada. Excepto la interfaz TAP configurada, otras interfaces están configuradas para una interfaz normal que se utiliza como interfaz de administración o está conectada al servidor externo. El dispositivo serie SRX generará un informe de seguridad o registro según el tráfico entrante.

ALG admite la aplicación, como TDR de carga, y permite dinámicamente su tráfico de datos.

Nota:

Puede configurar solo una interfaz TAP cuando opere el dispositivo en modo TAP.

Habilitar y deshabilitar ALG en modo TAP

En este tema, se muestra cómo habilitar o deshabilitar el estado ALG en modo TAP.

Antes de empezar:

  • Lea la descripción de la compatibilidad del modo TAP para ALG para comprender acerca de la compatibilidad de ALG para el modo TAP.

    • El estado ALG predeterminado para los dispositivos SRX300, SRX320, SRX340, SRX345, SRX380 y SRX550M es el siguiente:

    • El estado ALG predeterminado para el dispositivo SRX4100 es el siguiente:

  • Para habilitar la ALG que está deshabilitada de forma predeterminada, utilice el siguiente comando.

    Para cambiar la ALG habilitada al estado predeterminado, utilice el siguiente comando.

  • Para deshabilitar ALG que está habilitado de forma predeterminada, utilice el siguiente comando.

    Para volver a cambiar la ALG deshabilitada al estado predeterminado, utilice el siguiente comando.

  • Para habilitar el ALG de IKE, utilice el siguiente comando.

    Para volver a cambiar el ALG de IKE habilitado al estado predeterminado, utilice el siguiente comando.