Cómo funciona ALG
ALG procesa políticas dinámicas de firewall requeridas por ciertos protocolos como FTP. Muchos de estos protocolos se diseñaron sin consideración de la seguridad u otros controles de acceso, lo que puede causar problemas al introducir firewalls.
Por ejemplo, FTP utiliza varias sesiones para facilitar la transferencia de archivos: un canal de comando principal y canales de datos secundarios para listas de directorios y transferencia de archivos. A menudo, estos canales de datos se ejecutan en la dirección opuesta al canal de comando original.
FTP ALG automáticamente resuelve este problema monitoreando el canal de comando FTP, buscando comandos de puerto FTP que indiquen qué puertos de origen y destino se están solicitando. ALG abre dinámicamente una combinación específica de puertos IP de origen y destino en una política del firewall que permite establecer una sesión. Tan pronto como finaliza la sesión, la puerta de enlace se cierra inmediatamente.
FTP ALG también procesa un caso especial cuando una sesión FTP pasa por la interface NAT. En este caso, los puntos finales no siempre comprenden de que sus direcciones se están trasladando en medio de la transmisión. Los comandos del puerto FTP usan las direcciones IP que están configuradas en las interfaces de los nodos finales, lo que en el caso de un nodo detrás del firewall NAT es generalmente inalcanzable desde Internet. ALG resuelve este problema en la capa de aplicación reemplazando la IP interna con la dirección de la interface NAT.
Ejemplos de protocolos que requieren un ALG
- PASV trasmite la dirección IP y el número de puerto del cliente en el comando PORT usando ALG.
- El protocolo PPTP no tiene el concepto del «número de puerto», lo que crea problemas con la conversión de la dirección al mundo exterior. El ALG permite crear más de una conexión PPTP.
- Protocolo H.323. La puerta de enlace de capa de aplicación consiste en un conjunto de protocolos H.225.0 y H.245 para asegurar una sesión audiovisual en cualquier red.
- ALG también trabaja en protocolos de transferencia de archivos en algunos mensajeros, participa en la creación de servidores de juegos y ayuda a organizar redes de intercambio de archivos.