De acuerdo

Conoce sobre la funcipon SIP ASPF / ALG en un firewall de Huawei.

186 0 6 0 0

¡Hola a todos! En esta ocasión les presentare sobre la aplicación de SIP ALG en el firewall.

 

1. Protocolo SIP

1.1 Conceptos básicos del protocolo SIP

El Protocolo de inicio de sesión o Session Initiation Protocol (SIP) es un protocolo estándar IETF que se utiliza para crear, modificar y liberar sesiones de uno o más participantes. Estas sesiones pueden ser sesiones de usuario interactivas de elementos multimedia como llamadas de voz, conferencias multimedia y realidad virtual.

 

En una red SIP típica, hay varios clientes SIP y servidores proxy SIP. Los clientes SIP se clasifican en UAC y UAS. El cliente que inicia una llamada es un cliente de agente de usuario o user agent client (UAC), el cliente llamado es un servidor de agente de usuario o user agent server (UAS) y el servidor proxy SIP es un proxy SIP que reenvía solicitudes o respuestas en nombre de la UA. Los agentes de usuario (UA) pueden ser teléfonos móviles, teléfonos de línea fija y softphones. Los roles de la UAC y la UAS corresponde a una sola llamada..

 

SIP también es un protocolo multicanal. Se establecen varios canales entre las partes de la llamada. El canal de señalización se usa para transmitir señalización y el canal de datos se usa para transmitir datos de medios como voz y video. Por lo tanto, el tráfico SIP se clasifica en flujos de señalización y flujos de medios. Los flujos de señalización se transmiten a través de UDP o TCP. SIP puede utilizar el puerto UDP 5060 (no cifrado) o el puerto TCP 5061 (cifrado TLS) para transmitir flujos de señalización, incluidos los paquetes de solicitud y respuesta de las partes en la llamada. Los flujos de medios, incluidos los paquetes de datos de voz y video, se transmiten a través de RTP y RTCP.

 

1.2 Proceso de intercambio de mensajes SIP

La siguiente figura muestra la interacción típica de mensajes SIP.

 

sip



1. El Cliente 1 envía una solicitud INVITE al SIP Proxy, solicitando al Proxy que invite al Cliente 2 a unirse a la sesión. El cliente 1 envía su propia dirección IP y número de puerto al proxy a través de la descripción de sesión del mensaje INVITE (la clave es la información de control de medios descrita por el protocolo SDP (Protocolo de descripción de sesión o Session Description Protocol) en el cuerpo del mensaje).

 

Como se muestra en la figura siguiente, el campo Información de conexión del cuerpo del mensaje contiene su propia dirección IP y el campo Descripción de medios contiene el número de puerto, que se utiliza para indicarle a la otra parte dónde enviar datos de medios.

 

sip 2


2. El proxy responde con un mensaje 100 Trying  al cliente 1 para indicar que el mensaje de solicitud se ha recibido y se está procesando.

 

3. El Proxy reenvía el mensaje INVITE al Cliente 2, solicitando al Cliente 2 que se una a la sesión. El mensaje INVITE lleva la descripción de la sesión del Cliente 1 al Cliente 2.

 

4. El Cliente 2 devuelve un mensaje 100 Trying  al Proxy para indicar que el mensaje de solicitud se ha recibido y se está procesando.

 

5. El cliente 2 suena y se devuelve una respuesta de llamada 180 Ringing al proxy para notificarlo.

 

6. El proxy responde con una respuesta de llamada 180 ringing al Cliente 1, y el Cliente 1 escucha el tono de devolución de llamada.

 

7. El usuario del Cliente 2 descuelga el teléfono para contestar la llamada, y el Cliente 2 devuelve una respuesta 200 OK al Proxy, indicando que la solicitud INVITE enviada por él ha sido aceptada y procesada con éxito. El mensaje lleva la descripción de la sesión del Cliente 2 (información de control de medios descrita por el protocolo SDP, principalmente su propia dirección IP y número de puerto para conexiones de medios posteriores) y la envía al Proxy.

 

8. El Proxy envía una respuesta 200 OK al Cliente, indicando que la solicitud INVITE que envió ha sido aceptada y procesada con éxito, y la descripción de la sesión del Cliente 2 se envía al Cliente 1.

 

9. El Cliente 1 envía un mensaje ACK al Proxy, indicando que ha recibido la respuesta final del Proxy a la solicitud INVITE.

 

10. El Proxy envía un mensaje ACK al Cliente 2, indicando que ha recibido la respuesta final del Cliente 2 a la solicitud INVITE. En este punto, tanto la parte que llama como la parte llamada conocen la descripción de la conversación de la otra parte e inician la conversación.

 

11. Durante la conversación entre el Cliente 1 y el Cliente 2, se intercambian datos de medios


2 Introducción a SIP ALG

Como se mencionó anteriormente, SIP puede usar el puerto UDP 5060 o el puerto TCP 5060 (no cifrado) / puerto 5061 (cifrado TLS) para transmitir el flujo de señalización. Para que el flujo de señalización pase sin problemas a través de dispositivos de seguridad como FW, es necesario configurarlo en FW. La política de seguridad permite que pase el flujo de señalización SIP. Sin embargo, el flujo de medios se transmite a través del puerto negociado por la capa de aplicación mediante el uso de paquetes de señalización, y el administrador del número de puerto no puede predecir por adelantado y, por lo tanto, no puede liberar el flujo de medios configurando políticas de seguridad sofisticadas.

 

Por otro lado, en el escenario de NAT, el NAT ordinario solo puede traducir la dirección IP de la capa de red del mensaje y el puerto de la capa de transporte, pero no puede traducir la dirección IP y la información del puerto en la capa de aplicación, lo que provoca una señalización posterior y las interacciones de flujo de medios fallan.

 

En este momento, debe habilitar la función SIP ASPF / ALG en el FW, para detectar y convertir la información de IP y puerto contenida en la información de la capa de aplicación de mensajes y registrarla en el mapa del servidor. Cuando el mensaje de datos multimedia pasa a través del FW, llega al mapa del servidor. Se publica y ya no está controlado por la política de seguridad.

 

2.1 Cómo interactuar con SIP ALG

La siguiente figura utiliza el escenario de NAT de origen en el que el cliente A está en la intranet y el cliente B y el proxy SIP están en la extranet como ejemplo para describir el proceso de interacción clave entre el cliente A, el cliente B y el proxy SIP y cómo el firewall. Procesa los paquetes después de que se habilite ASPF / ALG.

 

sip 3


1. El cliente A envía una solicitud INVITE al puerto 5060 del SIP Proxy para llamar al Cliente B. El campo Via en el encabezado de la solicitud INVITE contiene la dirección del remitente (asumiendo que la dirección es 192.168.1.1:2000), y el cuerpo del mensaje contiene la información de control de medios descrita por el Protocolo de descripción de sesión (SDP). (La dirección IP y el número de puerto indicados por los campos Información de conexión y Descripción de medios indican la dirección IP y el número de puerto al que la parte del mismo nivel envía flujos de medios. Suponga que la dirección IP y el número de puerto son 192.168. 1.1: 3000)


2. Después de recibir la solicitud INVITE, el firewall traduce la dirección IP y el número de puerto, reenvía la solicitud al proxy SIP, crea una sesión de canal de señalización y crea un mapa de servidor basado en la dirección IP y el número de puerto en el encabezado y el cuerpo. de la solicitud INVITE para permitir paquetes de interacción posteriores.

 

El firewall crea dos mapas de servidor basados en la dirección de conexión de medios en el cuerpo del mensaje para permitir flujos RTP y flujos RTCP. Número de puerto utilizado por la secuencia RTCP = Número de puerto de la secuencia RTP + 1.

<sysname> display firewall session-table
sip  VPN:public --> public 192.168.1.1:2000[1.1.1.10:2222] +-> 1.1.1.1:5060
<sysname> display firewall server-map aspf
Type: ASPF, ANY -> 1.1.1.10:2222[192.168.1.1:2000], Zone: ---
Protocol: tcp(Appro: sip), Left-Time: 00:02:00
VPN: public -> public
Type: ASPF, ANY -> 1.1.1.10:3333[192.168.1.1:3000], Zone: ---
Protocol: tcp(Appro: sip-rtp), Left-Time: 00:00:50
VPN: public -> public
Type: ASPF, ANY -> 1.1.1.10:3334[192.168.1.1:3001], Zone: ---
Protocol: tcp(Appro: sip-rtcp), Left-Time: 00:00:50
 VPN: public -> public


El FW crea un mapa del servidor (el primer mapa del servidor) para los flujos de señalización para permitir que los datos de señalización posteriores se envíen desde el Cliente B al Cliente A. Además, se crean dos mapas del servidor (el segundo mapa del servidor y el tercer mapa del servidor) para los datos. flujo para permitir los datos de medios posteriores enviados por el Cliente B al Cliente A.

 

3. El proxy SIP reenvía el mensaje INVITE al cliente B, solicitando al cliente B que se una a la llamada, y envía el mensaje INVITE que lleva la descripción de la sesión del cliente A al cliente B.

 

4. El cliente B recibe una alerta y envía una respuesta de 180 al proxy SIP.

 

5. El proxy SIP reenvía la respuesta 180.

 

6. Después de recibir la respuesta 180, el firewall coincide con la sesión del canal de señalización, convierte la dirección de destino del paquete en la dirección IP real y el número de puerto del cliente A y reenvía el paquete al cliente A. El cliente A escucha el tono de devolución de llamada.


7. El cliente B responde a la llamada. El Cliente B envía una respuesta 200 OK al SIP Proxy, indicando que la solicitud INVITE del SIP Proxy ha sido aceptada y procesada con éxito. El campo Vía en el encabezado del mensaje contiene la información de la dirección del remitente (suponga que el valor es 1.1.1.2:3000), y el cuerpo del mensaje contiene la información de control de medios descrita por el Protocolo de descripción de sesión (SDP) (dirección IP y puerto número indicado por los campos Información de conexión y Descripción de medios). Indica la dirección y el número de puerto al que se envía el flujo de medios. Suponga que la dirección y el número de puerto son 1.1.1.2:4000.

 

El proxy SIP reenvía la respuesta 200 OK, lo que indica que la solicitud INVITE ha sido aceptada y procesada con éxito. La respuesta 200 OK lleva la descripción de la sesión del cliente B.

 

9. Después de recibir la respuesta 200 OK, el firewall traduce la dirección de destino del paquete en la dirección IP real y el número de puerto del Cliente A y reenvía el paquete al Cliente A. Además, se crea un mapa de servidor basado en la dirección IP. y el número de puerto en el encabezado del mensaje y el cuerpo de los 200 mensajes OK para permitir paquetes de interacción posteriores.

<sysname> display firewall session-table
sip  VPN:public --> public 1.1.1.2:3000 +-> 1.1.1.10:2222[192.168.1.1:2000]
 <sysname> display firewall server-map aspf
Type: ASPF, ANY -> 1.1.1.2:3000, Zone: ---
Protocol: tcp(Appro: sip), Left-Time: 00:02:00
VPN: public -> public
Type: ASPF, ANY -> 1.1.1.2:4000, Zone: ---
Protocol: tcp(Appro: sip-rtp), Left-Time: 00:00:50
VPN: public -> public          
Type: ASPF, ANY -> 1.1.1.2:4001, Zone: ---
Protocol: tcp(Appro: sip-rtcp), Left-Time: 00:00:50
VPN: public -> public


El FW crea un mapa del servidor (el primer mapa del servidor) para los flujos de señalización para permitir el envío de datos de señalización posteriores del Cliente A al Cliente B. Además, se crean dos mapas del servidor (el segundo mapa del servidor y el tercer mapa del servidor) para los datos flujo para permitir el envío de datos de medios posteriores del Cliente A al Cliente B.


10. El cliente A envía un mensaje ACK al SIP Proxy, indicando que el SIP Proxy ha recibido la respuesta final a la solicitud INVITE.

 

11. Después de recibir el mensaje ACK, el firewall traduce la dirección IP y el número de puerto y reenvía el mensaje al proxy SIP.

 

12. El SIP Proxy reenvía el mensaje ACK al Cliente B, indicando que el Cliente B ha recibido la respuesta final a la solicitud INVITE. En este caso, tanto la parte que llama como la parte llamada conocen la dirección de conexión de medios de la otra parte y pueden iniciar la conversación.

 

13. Durante la llamada entre el Cliente A y el Cliente B, el flujo de medios coincide con el mapa del servidor. El fw crea dos sesiones (sesión RTP y sesión RTCP) para la dirección del Cliente A al Cliente B y del Cliente B al Cliente A.

<sysname> display firewall session-table
sip-rtp  VPN:public --> public 192.168.1.1:10004[1.1.1.10:12314] --> 1.1.1.2:4000
sip-rtcp  VPN:public --> public 192.168.1.1:10005[1.1.1.10:12315] --> 1.1.1.2:4001
sip-rtp  VPN:public --> public 1.1.1.2:3334 --> 1.1.1.10:3333[192.168.1.1:3000]
sip-rtcp  VPN:public --> public 1.1.1.2:3335 --> 1.1.1.10:3334[192.168.1.1:3001]


Saludos.

 

FIN.


También te puede interesar:

Guía de dimensionamiento firewall USG6000 Series NGFW

Descripción general de la función DNS utilizado en firewalls de Huawei.

Escenarios de aplicación borde de red y detección fuera de ruta para NIP6000

 

Conoce más de esta línea de productos en:

Controlador de red eSight

Foro de switches de Huawei

Foro de seguridad de Huawei

                                                                    

O pregúntale al robot inteligente de Huawei, conócelo aquí: 

Infografía: Conoce a iKnow, el robot inteligente

 


  • x
  • Opciones:

Comentar

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

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 el “ Contrato de usuario.”

My Followers

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

Inicia sesión

Bloquear
¿Estás seguro de bloquear a este usuario?
Los usuarios en lista negra no pueden comentar tus publicaciones,no pueden mencionarte,no pueden enviarte mensajes privados.
Recordatorio
Agrega tu número de teléfono para obtener un bono de invitación.
Guía de privacidad y seguridad de usuario
¡Gracias por ser parte de la Comunidad de Soporte Huawei Enteprise! A continuación te ayudaremos a consultar y entender cómo recopilamos, procesamos, protegemos y almacenamos tus datos personales, así cómo los derechos obtenidos de acuerdo con Política de privacidad y Contrato de usuario.