Muita gente enxerga o proxy apenas como um servidor que intermedia as requisições entre a rede local e a internet, fazendo cache de páginas e controle de acesso. Sem dúvidas, o serviço mais conhecido e utilizado para este fim é o Squid. O proxy tem outra característica/função, pouco conhecida mas muito útil: o proxy reverso.
O proxy web corresponde à "função" conhecida pela maioria das pessoas. Nesta configuração, o proxy tem a função de compartilhar a internet com a rede local, receber as requisições feitas pelos clientes e buscar o que foi solicitado nos servidores web. Além disso, o proxy oferece mais algumas vantagens a um administrador de redes, como:
Controle de acesso: o acesso à internet pode ser controlado com base no horário, endereço IP do cliente, login e sites com conteúdo indesejado;
Cache de páginas: o proxy guarda informações das páginas acessadas. Quando alguém acessa um endereço, o servidor procura primeiro nos seus arquivos armazenados, caso já possua a página, não precisa buscá-la novamente. O que acaba tornando a navegação mais rápida e evitando acessos desnecessários à web;
Relatórios de acesso: todos os logs de acesso são armazenados, o que permite que possam ser criados relatórios dos acessos realizados pelos clientes através do servidor.
O proxy web possui tanto função de servidor quanto de cliente. É servidor quando possui os objetos solicitados pelos navegadores e lhe envia as respostas. É cliente quando não possui algum objeto solicitado e precisa requisitá-lo ao servidor web. Os proxies vêm sendo muito usados nas empresas, com o intuito de acelerar o acesso à Internet e evitar investimentos em ampliação de largura de banda.
O proxy reverso é um servidor instalado entre a internet e os servidores web internos de uma empresa. As requisições externas são direcionadas a um servidor interno por meio de um roteamento feito pelo proxy reverso. Dessa forma, ele é a única interface para as requisições externas.
Imagine a situação: sua empresa possui o domínio xyz.com.br registrado, seu site (www.xyz.com.br) está em um servidor dentro da sua rede e, além do portal, há outras aplicações que precisam ser disponibilizadas externamente. Para cada aplicação é necessário possuir um domínio ou subdomínio registrados? Não! Neste caso, pode ser usado o proxy reverso. Como?! É o que vou explicar daqui a pouco.
Além do roteamento de requisições externas, são vantagens do proxy reverso:
Segurança: como o proxy é a única interface externa da rede, ele "esconde" os demais servidores;
Criptografia: a criptografia SSL pode ser delegada ao proxy ao invés dos servidores internos;
Balanceamento de carga: o servidor pode distribuir a carga para vários servidores da rede;
Cache: assim como o web proxy, o proxy reverso pode manter em cache o conteúdo estático das requisições realizadas, ajudando assim a diminuir a carga dos servidores web;
Compressão: o proxy reverso pode tornar o acesso mais rápido através da compressão do conteúdo acessado.
Eu geralmente habilito só o proxy_http, proxy_ftp e o deflate para compactar as páginas de saída.
Quanto ao conf eu também não edito o original do apache, apenas crio um novo arquivo em /etc/apache2/conf.d
Usar arquivos separados é mais prático quando, por exemplo, você precisa distribuir para várias máquinas ou criar um pacote de instalação (.deb ou .rpm) já que evita a necessidade de "seds" direto nos .conf.
[2] Comentário enviado por nataliavaz em 04/10/2011 - 14:41h
Sugestões são sempre bem vindas perrywerneck. Obrigada.
Optei por editar o conf porque eram pequenas alterações, só habilitação de módulo e inclusão de outras configurações, e também sempre que altero um arquivo de configuração original faço um backup do mesmo. Na verdade ainda não precisei de criar um pacote instalação, por isso não me preocupei com esta questão, mas vou considerar.
A idéia era compartilhar mesmo, com certeza a partir desta surgirão outras observações e assim vamos evoluindo a solução.
[3] Comentário enviado por xerminador em 05/10/2011 - 11:40h
nataliavaz ,
Bacana que nao conhecia esta função que o proxy poderia exercer na rede.
So tenho uma duvida em questao de segurança, ele no caso pode esconde o restante da rede c om os redirecionamento proprios para cada servidor com seus respectivos serviços .
Eu vi algumas vantagens comparado com um firewall de borda mas o que mais se preocupamos na borda e com segurança.
Minha pergunta é
Esse Proxy reverso é seguro?
Esse Proxy pode trabalha em conjunto com um firewall?
[4] Comentário enviado por nataliavaz em 05/10/2011 - 12:00h
Olá xerminator, até a pouco tempo também não sabia desta função do proxy e o Apache também faz muita coisa além de hospedar aplicações na rede.
Bom, vamos às dúvidas, não sou especialista no Apache, o que fiz foi compartilhar uma experiência que tive, mas suas perguntas creio que da pra responder.
1 - Esse Proxy reverso é seguro?
R: é seguro no sentido de ser a única interface na borda, eliminando a necessidade dos outros servidores internos estarem visíveis na internet. Ele não dispensa as outras ferramentas e rotinas de segurança da rede.
2 - Esse Proxy pode trabalha em conjunto com um firewall?
R: Como disse anteriormente, o Proxy não elimina o firewall, trabalha em conjunto com o mesmo. Ele só encaminha as requisições de fora pra dentro da rede, não controla acesso, pacotes...
3 - E Qual a vantagem? Citei algumas no artigo, mas vamos lá:
R: Deixa somente um servidor visível na internet;
Você só precisa de um dominio registrado.
Pode fazer cache de conteúdo estático diminuindo carga na rede;
Deixa somente um servidor preocupado em direcionar as requisições e cada servidor só se preocupa em responder às requisições para sua aplicação específica;