[MASOCH-L] Squid (transparente) + IPFW no FreeBSD 6

Jorge Luiz Correa jorge.gter at acmesecurity.org
Fri Jan 5 00:17:12 BRST 2007


>> Renato wrote: (04/01/2007)

Olá..

Você precisa configurar o squid para proxy transparente, dentro do
squid.conf

http://www.free.bsd.com.br possui um tutorial exatamente pra isso,
indicando inclusive otimiza??es do kernel do BSD para o uso do diskd.

Abraços

--

Obrigado pela ajuda Renato. Vou tornar mais claro meu problema.
Já possuo o squid configurado como proxy, podendo ser acessado quando
configurado manualmente qualquer browser em alguma das subredes do
firewall. Um dos howto's que utilizei foi o do www.free.bsd.com.br. No
entanto existe algo estranho nas regras mencionadas.

ipfw add 49  allow tcp from any to any
ipfw add 50  fwd 127.0.0.1,3128 tcp from any to any 80

Nenhum pacote entra na regra 50, pois ficam na 49. Isto foi verificado
com o ipfw show. Tentando utilizar apenas a 50, o fwd acontece com
alguns pacotes, mas não navega. Estranho que as vezes, algumas páginas
abrem, como o google (não é cache, pois é possível fazer algumas buscas).

O squid.conf está ajustado para ser transparente, com as diretivas
mencionadas (por enquanto sem diskd):

   http_port 3128
   httpd_accel_host virtual
   httpd_accel_port 80
   httpd_accel_with_proxy on
   httpd_accel_uses_host_header on

Possuo 4 interfaces, das quais 3 devem receber pacotes http(s)(etc) e
encaminhá-los ao Squid. Estas 3 são os gateways de cada subnet.

em0 - interface ligada ao roteador (200.145.aaa.yyy/30)
em1 - interface ligada à DMZ (200.145.aaa.bbb/26) gw
bge0 - interface da subnet 1 (200.145.aaa.ccc/26) gw
bge2 - interface ligada à subnet 2 (200.145.aaa.ddd/25) gw

Pensei regras como:

ipfw add 50  fwd 127.0.0.1,3128 tcp from 200.145.aaa.bbb/26 to any 80
ipfw add 51  fwd 127.0.0.1,3128 tcp from 200.145.aaa.ccc/26 to any 80
ipfw add 52  fwd 127.0.0.1,3128 tcp from 200.145.aaa.ddd/26 to any 80
...

Sem sucesso.

No rc.conf possuo:

gateway_enable="YES"
firewall_enable="YES"
arpproxy_all="YES"
forward_sourceroute="YES"
accept_sourceroute="YES"
squid_enable="YES"
...

No kernel:

options         IPFIREWALL
options         IPFIREWALL_FORWARD
...

O fwd não funciona :/ Os pacotes parecem não chegar no squid.
Alguma coisa errada ou faltando?


Muito grato pela atenção!
:)

-- 
jorge (shift+2) acmesecurity . org
ACME! - Advanced Counter-Measures Environment
Computer Security Research - Unesp


More information about the masoch-l mailing list