ALG

October 26, 2022
O ALG (Application Level Gateway, gateway de nível de aplicativo) é um componente de um roteador NAT que entende um protocolo de aplicativo e, quando os pacotes desse protocolo passam por ele, modifica-os para que os usuários por trás do NAT possam usar o protocolo.

Como funciona

O ALG lida com as políticas dinâmicas de firewall exigidas por determinados protocolos, como o FTP. Muitos desses protocolos foram projetados sem levar em conta a segurança ou outros controles de acesso, o que pode causar problemas na implementação de firewalls.

Por exemplo, o FTP usa várias sessões para facilitar as transferências de arquivos – um canal de comando primário e canais de dados secundários para listagens de diretórios e transferências de arquivos. Esses canais de dados geralmente vão na direção oposta ao canal de comando principal.

Como esses canais de dados podem se conectar a qualquer porta, é quase impossível criar uma política de firewall estático que permita esses canais de dados e ainda forneça proteção adequada.

O FTP ALG resolve automaticamente esse problema monitorando o canal de comando FTP, procurando comandos de porta FTP que indicam quais portas de origem e destino estão sendo solicitadas. O ALG abre dinamicamente uma combinação específica de portas IP de origem e destino na política de firewall que permite o estabelecimento de uma sessão. Quando a sessão é concluída, o gateway é fechado imediatamente.

O FTP ALG também lida com o caso especial em que uma sessão de FTP passa por uma interface NAT. Nesse caso, os pontos de extremidade nem sempre percebem que seus endereços estão sendo traduzidos no meio do caminho. Os comandos da porta FTP usam endereços IP configurados nas interfaces dos terminais, o que, no caso de um host atrás de um firewall NAT, geralmente não pode ser acessado pela Internet. O ALG resolve esse problema na camada do aplicativo substituindo o IP interno pelo endereço da interface NAT.

O princípio do ALG é semelhante ao de um servidor proxy, o gateway garante que os clientes possam usar o protocolo.

Exemplos de protocolos que exigem ALG

  • O PASV passa o endereço IP do cliente e o número da porta no comando PORT com ALG.
  • O PPTP não tem o conceito de “número de porta”, o que cria problemas com a tradução de endereços para o mundo externo. O ALG permite que você crie mais de uma conexão PPTP.
  • Protocolo H.323. O ALG consiste em um conjunto de protocolos H.225.0 e H.245 para fornecer uma sessão AV em qualquer rede.
  • O ALG também trabalha em protocolos de transferência de arquivos em alguns mensageiros, participa da criação de servidores de jogos e ajuda a organizar redes de troca de arquivos.
(English) We use cookies to optimize site functionality and give you the best possible experience. To learn more about the cookies we use, please visit our Cookies Policy. By clicking ‘Okay’, you agree to our use of cookies. Learn more.