O que é um proxy transparente?

Proxies, Jul-08-20215 minutos de leitura

Podemos definir um proxy transparente como um servidor que atua como um sistema intermediário que intercepta a conexão entre um usuário final e um provedor de conteúdo. Outros nomes para o proxy transparente são inline proxy ou forced proxy. Usamos a palavra "transparente" com o proxy porque ele intercepta solicitações ao interceptar pacotes direcionados ao destino

Podemos definir um proxy transparente como um servidor que atua como um sistema intermediário que intercepta a conexão entre um usuário final e um provedor de conteúdo. Outros nomes para o proxy transparente são inline proxy ou forced proxy. Usamos a palavra "transparente" com o proxy porque ele intercepta solicitações por meio da interceptação de pacotes direcionados ao destino, fazendo parecer que o próprio destino lida com a solicitação. O proxies transparente é configurado pelo site ou pelo operador de rede e não pelo usuário final.

Às vezes, também usamos o termo " proxyforçado" para um proxy transparente. Isso ocorre porque ele pode ser aplicado à conexão de um usuário sem modificar as configurações de proxy do computador. Consequentemente, o proxies transparente pode ser imposto aos usuários sem o consentimento deles, mas eles sabem de sua presença em muitos casos. 

Exemplos de Transparente Proxies

Um firewall é um exemplo de proxy transparente que permite a passagem de tráfego entre uma rede interna e a Internet, mas bloqueia o tráfego se ele violar a tabela de regras do firewall.

Outros exemplos de proxies transparente são as redes de distribuição de conteúdo (CDNs). Elas oferecem redundância, armazenamento em cache e aumentam a velocidade sem modificar ou expor o sistema de origem. O usuário pensa que está diretamente conectado ao provedor de serviços, mas, na verdade, a CDN lida com todas as suas solicitações. É assim que empresas de tecnologia como Google, Twitter e Facebook gerenciam milhões de solicitações com o mínimo de tempo de inatividade.

Transparente comum Proxy Configurações

A seguir estão as configurações padrão do proxy transparente sempre que o configuramos:

  • Autenticação: Fornece ao servidor as mesmas credenciais que os usuários por trás do site proxy.
  • Interceptação: Define como o proxy transparente intercepta o tráfego no nível do roteador ou do sistema operacional.
  • Caching: especifica se o servidor proxy deve ou não armazenar em cache o conteúdo para os usuários que retornam.
  • proxy reverso: em vez de configurar o proxy para interceptar o acesso remoto, podemos colocá-lo na frente de um servidor da Web para acelerar o desempenho do usuário. 
  • Fluxo de dados, filtragem de bate-papo: Podemos configurar o proxy transparente para que os usuários não tenham permissão para acessar portas ou protocolos específicos.

Transparente Proxy Usos - Lado do cliente

Podemos implantar um proxy transparente no lado do cliente, o que significa que o proxy intercepta todo o tráfego de e para um ponto de extremidade do cliente. Os usos do proxies transparente no lado do cliente são:

Cache transparente

Quando várias pessoas acessam o mesmo conteúdo da mesma área ou local - por exemplo, quando vários alunos acessam o mesmo site de notícias por meio da rede da universidade -, é mais eficiente usar um proxy transparente para armazenar o conteúdo em cache inicialmente e servi-lo a partir do cache para os usuários subsequentes.

Autenticação

As operadoras de Internet celular e os pontos de Wi-Fi públicos às vezes usam o proxies transparente para forçar os usuários a se autenticarem na rede e concordarem com seus termos de serviço. A navegação só é permitida quando o usuário se certifica e concorda com os termos e condições. 

A maioria dos usuários não tem ideia de que toda a conexão pode ser interceptada e monitorada pela operadora, mesmo após a tela de autenticação inicial via proxy transparente.

Monitoramento de tráfego

Quando estamos operando uma rede, podemos configurar um proxy transparente para monitorar o tráfego e o comportamento do usuário, mas o monitoramento do tráfego também tem muitos usos ilegítimos. Por exemplo, um operador de Wi-Fi público inescrupuloso e não confiável pode monitorar facilmente as conexões do usuário e roubar credenciais e dados.

Gateway Proxies

Podemos usar um gateway proxy para modificar ou bloquear o tráfego de rede com base em regras. Um exemplo de gateway proxy é um firewall transparente proxy discutido no exemplo acima.

Filtragem de conteúdo

Também podemos usar um proxy transparente para filtrar conteúdo desnecessário e indesejado. Por exemplo, o proxy pode se abster de encaminhar a solicitação para o servidor da Web quando um site específico for solicitado. Em vez disso, ele intercepta a conexão e exibe um aviso ou uma mensagem de erro para o usuário.

Transparente Proxy Usos - Lado do servidor

Proteção contra negação de serviço (Dos)

Podemos proteger um servidor contra um ataque de negação de serviço (DoS) SYN-flood usando um tipo de proxy transparente, ou seja, interceptação de TCP. Ele desempenha a função de interceptar todo o tráfego para um servidor da Web, aceitar solicitações de clientes e executar um handshake de três vias. Além disso, se a interceptação do tráfego for bem-sucedida, ele executa um handshake de três vias com o servidor, unindo assim as duas meias conexões entre o cliente e o servidor.

A interceptação do Protocolo de Controle de Transmissão verifica as solicitações de TCP e, normalmente, aguarda 30 segundos para estabelecer conexões. Ele entra no "modo agressivo" sempre que o número de conexões inativas ultrapassa um determinado limite. Nesse modo, cada nova conexão que chega faz com que a conexão passiva mais antiga seja excluída.

No entanto, a técnica mencionada acima não é mais eficaz contra ataques modernos de negação de serviço distribuído (DDoS) em grande escala. Isso ocorre porque os invasores, hoje em dia, controlam milhões de computadores zumbis e servidores de alta potência para criar inundações SYN que sobrecarregam um controlador de interceptação TCP.

Por esse motivo, a maioria das organizações atualmente usa serviços baseados em nuvem, como a proteção contra DDoS da Imperva. Esses serviços podem proteger contra grandes ataques de DDoS e também podem ser ampliados sob demanda, lidando e tratando ainda mais com ataques de grande escala. 

Por exemplo, os serviços DDoS podem evitar ataques à camada de aplicativos e ataques de protocolo que não ocorrem na camada TCP.

CDN para otimização de front-end

Podemos definir uma CDN (Content Delivery Network, rede de distribuição de conteúdo) como uma rede globalmente distribuída de servidores proxy que serve e armazena em cache o conteúdo para os usuários perto de sua localização geográfica.

Um exemplo de CDN é a Global Content Delivery Network da Imperva, uma proxy transparente que opera no lado do servidor. Sua finalidade é realizar a otimização de front-end para melhorar a experiência do usuário final. Ela intercepta o tráfego para um servidor da Web e oferece o mesmo conteúdo do cache do servidor em vez de permitir que o usuário acesse o servidor diretamente. Como resultado, o desempenho do usuário é aprimorado e os recursos do sistema necessários no servidor são reduzidos.

Limitações do Transparent proxy

Embora o proxy transparente tenha uma grande variedade de vantagens, ele pode gerar algumas frustrações em ambientes corporativos complexos.

Falta de robustez: Se uma conexão for estabelecida entre um cliente e um cache e ocorrer uma alteração de roteamento que faça com que o cliente adote um caminho que não flua mais pelo dispositivo de rede "desviador", a sessão será interrompida e o usuário terá que recarregar a página.

Por outro lado, se os roteadores na Internet estiverem oscilando (um roteador anuncia alternadamente uma rede de destino em uma sequência rápida), os resultados serão ainda mais imprevisíveis.

Dependência do navegador: A maioria dos sites transparentes proxies depende do fato de o navegador fornecer o nome do host do servidor de origem no cabeçalho da solicitação HTTP para que a operação seja bem-sucedida.

Isso é necessário porque esses caches não têm acesso ao endereço IP de destino do servidor de origem a partir do endereço IP do pacote.

Portanto, quando ocorre uma falha de cache, eles não conseguem identificar o endereço do servidor de origem para o qual enviar a solicitação.

Conclusão

Discutimos que o tráfego da Internet pode ser monitorado e filtrado com o uso de um proxy transparente. Ele também molda a maneira como interagimos com a Web. Seja para fornecer dados mais rapidamente por meio de filtragem de conteúdo indesejado, armazenamento em cache ou para dar às empresas mais controle sobre suas redes, o proxy transparente acrescenta funcionalidade à Internet sem causar nenhum inconveniente.