O que são os servidores proxy
Um
servidor proxy é uma máquina que atua como intermediária entre os computadores de uma
rede local (às vezes, mediante
protocolos, com exceção do
do protocolo TCP/IP) e a Internet.
Em geral, o servidor proxy é utilizado para a
web, trata-se, então, de um proxy
HTTP. No entanto, podem existir servidores proxy para cada protocolo de aplicação
(FTP, etc.):
O princípio operacional de um proxy
O princípio de funcionamento básico de um servidor proxy é bastante simples, trata-se de um servidor que atua como ‘representante’ de uma aplicação efetuando pedidos na Internet em seu lugar. Desta maneira, quando um usuário se conecta à Internet através de uma aplicação cliente configurada para utilizar um servidor proxy, esta vai conectar-se em primeiro lugar ao servidor proxy e entregar o seu pedido. O servidor proxy vai conectar-se, então, ao servidor que a aplicação cliente quer contatar e transmitir-lhe o pedido. Em seguida, o servidor vai enviar a resposta ao proxy, que vai, por sua vez, transmiti-la à aplicação cliente:
Características de um servidor proxy
Em seguida, com a utilização do TCP/IP nas
redes locais, a função de retransmissão do servidor proxy é garantida diretamente pelas passarelas e roteadores. No entanto, os servidores proxy continuam atuais graças a diversas outras funcionalidades.
Armazenamento oculto
A maior parte dos proxys têm um
esconderijo (caching), ou seja, a capacidade de guardar em memória (oculta) as páginas mais visitadas pelos usuários da rede local, para poder proporciona-las o mais rápido possível. Na verdade, em informática, o termo
cache designa um espaço de armazenamento temporário de dados (o termo
buffer também é utilizado).
Um servidor proxy pode esconder (neologismo, que significa ‘pôr em memória oculta) as informações designa-se geralmente servidor
proxy-cache.
Esta funcionalidade aplicada em certos servidores proxy permite, por um lado, reduzir a utilização da banda larga na Internet, assim como reduzir o tempo de acesso aos documentos dos usuários.
No entanto, para conseguir isso, o proxy deve comparar regularmente os dados que armazena na memória cache com os dados remotos para garantir que os dados em cache sejam válidos.
A filtragem
Por outro lado, graças ao uso de um proxy, é possível garantir um acompanhamento das conexões (logging ou tracking) através da constituição de registros de atividade para salvar, sistematicamente, os pedidos dos usuários durante seus pedidos de conexão à Internet.
Graças a isso, é possível filtrar as conexões à Internet analisando, tanto os pedidos do cliente, quanto as respostas do servidor. Quando a filtragem é realizada comparando o pedido do cliente com uma lista de pedidos autorizados, chamamos de
lista branca. E, quando se trata de uma lista de sites proibidos, falamos de
lista negra. Para terminar, a análise das respostas dos servidores em conformidade com uma lista de critérios (palavras-chaves) chama-se
filtragem de conteúdo.
A autenticação
Na medida em que o proxy é o intermediário indispensável aos usuários da rede interna para acessar a recursos externos, às vezes é possível utilizá-lo para autenticar os usuários, isto é, para pedir-lhes que se identifiquem com um nome de usuário e uma senha, por exemplo. Assim, é fácil dar acesso aos recursos externos apenas para as pessoas autorizadas a fazê-lo e poder registar nos arquivos diários dos acessos identificados.
Este tipo de mecanismo, quando instalado, gera obviamente vários problemas relativos às liberdades individuais e aos direitos das pessoas.
Servidores de proxy inversos
Chama-se
reverse-proxy um servidor proxy cache
invertido, ou seja, um servidor proxy que, em vez de permitir o acesso à internet aos usuários interno, permite aos usuários da Internet acessar indiretamente a certos servidores internos:
Assim, o
reverse-proxy é utilizado como intermediário para os usuários da Internet que desejam acessar um website interno, transmitindo-lhe indiretamente os pedidos. Graças a ele, o servidor web está protegido contra os ataques diretos do exterior, o que reforça a segurança da rede interna. Por outro lado, a função de cache do reverse-proxy pode diminuir a carga de trabalho do servidor para o qual foi previsto, razão pela qual tal servidor é chamado de
acelerador do servidor (server accelerator).
Para concluir, graças a algoritmos sofisticados, o reverse-proxy pode servir para repartir a carga redirecionando os pedidos para diferentes servidores equivalentes. Este processo se chama
distribuição de carga (load balancing).
Configuração de um servidor proxy
Sem dúvida, o proxy mais utilizado é, sem dúvida alguma, o
Squid, um software livre disponível em várias plataformas incluindo o
Windows e o
Linux.