|
S E Ç Õ E S |
|
|
B U S C A |
|
|
|
D E S T A Q U E |
|
|
 |
|
|
 |
|
|
 |
|
E N Q U E T E |
|



|
- 2001
Todos os direitos reservados
|
|
|
H O W T O
|

|
|
|
|
21/07/02 20:24 - Solução de proxy transparente e relatório de acesso em dois servidores distintos
Alfredo Tomio Jr
Foi solicitado que determinado servidor corporativo com ip valido funcionando como roteador/gateway
da rede interna para a Internet e ainda tem serviços como servidor de e-mail, servidor DNS, servidor web,
faça acesso a web (porta 80) através de um link (outro gateway) ADSL (ip invalido) e não através do
seu gateway padrão que é um servidor com link dedicado síncrono e possui ip valido.
E ainda fosse feito um relatório de acesso a web da rede interna.
Os dois gateways (ip valido LPCD e não valido ADSL)são ligados no mesmo switch que esta ligado o
servidor corporativo.
Para solucionar o problema foram feitas as seguintes configurações:
1. Adicionado um alias na interface externa, passando o servidor a ter dois Ips , um valido
(200.180.xxx.xxx) e um
não valido (192.168.1.10).
2. Através do ipfw foi feito um forward antes do NAT de toda solicitação para a porta 80:
/sbin/ipfw add 200 fwd 192.168.1.7 tcp from 192.168.40.0/24 to any 80
/sbin/ipfw add 300 divert natd all from any to any via xl0
O forward é feito antes do NAT, pois, precisamos fazer o relatório individual de cada funcionário.
3. no gateway 192.168.1.7 foi adicionado uma rota para as conexões voltarem a origem sem problemas:
route add -net 192.168.40.0/24 192.168.1.10
e também foi configurado um DNS para resolução de nomes reversa para a rede 192.168.40.0/24.
O servidor de ip invalido 192.168.1.7 tem proxy-cache squid no modo transparente e as solicitações
para a porta 80 são redirecionadas através do ipfw:
/sbin/ipfw add 6000 fwd 127.0.0.1,3128 tcp from any to any 80 in recv fxp0
Tudo funciona perfeitamente, o servidor corporativo com IP valido que funciona como gateway da
rede interna da empresa e possui serviços sofisticados como DNS e e-mail, repassa os pedidos para
a porta 80 para um servidor vizinho que tem com gateway um link ADSL.
O objetivo é deixar o link dedicado síncrono (256K) com menos trafego e dar vazão para a web através
de um link ADSL (1500K).
Para gerar o relatorio de acesso a web foi utilizado o SARG - Squid Analysis Report Generator
http://web.onda.com.br/orso/sarg.html.
Este programa faz um relatorio bastante interessante do arquivo de log do squid. Como o arquivo de log
default access.log, geradodo pelo servidor 192.168.1.7 fica muito grande e possui log de outros clientes,
pois, tenho várias empresas fazendo o mesmo forward da porta 80 para este gateway, preferi gerar um
arquivo de log exclusivo da empresa em questão através do comando:
tail -F /usr/local/squid/logs/access.log | grep 192.168.40 >> /usr/local/squid/logs/emp.log
No /etc/crontab foi adicionado os seguintes parâmetros:
0 23 * * * root /usr/bin/sarg
0 2 * * * root /usr/local/squid/bin/squid -k rotate
0 3 * * * root cat /dev/null > /usr/local/squid/logs/empresa.log
As 23:00 o SARG gera o relatório. As 02:00 o squid faz um rotate dos logs e as 03:00 o arquivo
de log da empresa é apagado.
Notas:
O comando tail é usado com o flag -F (maiúsculo),pois, mesmo o squid fazendo rotate o
comando não para de capturar a saída.
O SARG é configurado de forma a transformar ips em nomes através do DNS, gerando um relatório
bastante amigável e de fácil entendimento.
Alfredo Tomio Jr
Alfredo Tomio Jr
|
|