Via, X-Forwarded-For e Forwarded: guia completo dos cabeçalhos de proxy
Imagine: você configurou o mesmo servidor proxy e acessou dois sites diferentes através dele. O primeiro informa alegremente: seu IP real é tal, você está usando proxy. O segundo não nota nada de suspeito e trata você como um visitante comum. Um proxy, uma configuração, mas dois resultados completamente diferentes. Por que isso acontece? A resposta quase sempre está nos cabeçalhos HTTP.
Cabeçalhos são informações de serviço que navegadores, proxies e servidores trocam entre si a cada requisição. A maioria deles é invisível para o usuário comum, mas são eles que moldam o que o servidor de destino sabe sobre você e sobre a cadeia de nós por onde a requisição passou. Três cabeçalhos desempenham os papéis principais nessa história: Via, X-Forwarded-For e o moderno Forwarded, descrito na RFC 7239.
Neste guia, vamos explorar o assunto do básico aos detalhes. Você vai descobrir de onde vem o cabeçalho Via, como cabeçalhos hop-by-hop diferem de end-to-end, por que não se deve confiar cegamente no X-Forwarded-For e como configurar corretamente a confiança nele no lado do servidor. Vamos decifrar honestamente os termos de marketing proxy transparente, anônimo e elite — em termos de cabeçalhos específicos, não de promessas publicitárias. E o mais importante: você terá ferramentas prontas para verificar com as próprias mãos quais cabeçalhos realmente saem para fora.
Vamos logo definir os limites. Estamos falando exclusivamente de cabeçalhos HTTP. Não vamos abordar fingerprinting, impressões digitais de TLS ou métodos de detecção de automação — esses são tópicos extensos à parte. Aqui, apenas cabeçalhos: o que os define, o que eles revelam e como gerenciá-los.