[FUG-BR] Mais uma vez proxy transparente e pf.conf "SEPARADOS"

Wanderson Tinti wanderson em bsd.com.br
Sexta Julho 9 19:20:37 BRT 2010


Em 9 de julho de 2010 02:30, <rodrigo em rcsolucoesinteligentes.com.br>escreveu:

>   Pessoal boa noite,
>   Bom o que acontece, a um tempo atrás vi que um usuário postou uma
>   dúvida de como fazer para ter o firewall e o proxy transparente em
>   separados, atualmente venho necessitando fazer essa configuração
>   também pelo que pude notar a forma que ele resolveu foi instalando o
>   pf na outra maquina também,isso para mim seria inviável, pq senão
>   terei de tomar conta de dois firewall's.
>   Consegui fazer o pf, redirecionar todos os pacotes para a porta 3128 do
>   outro computador, porém esse não esta funcionando como transparente,
>   pois até agora nao consegui achar um metodo de como fazer ele ficar
>   transparente.
>   Segui as dicas desse amigo que passou por isso, mas até agora
>   infelizmente nao consegui, tirando o fato de ficar duas noites
>   praticamente pendurado no google tentando axar a solução, o material
>   é muito pouco e o que se axa é muito inconsistente.
>   Conto com a ajuda de voces para poder me ajudar, vou colocar a baixo um
>   trecho do meu pf.conf, para que possa ajudar.
>   #ext_if="rl0"
>   #int_if="rl1"
>   #int_net="{ 192.168.0.0/16 }"
>   #proxy="{192.168.0.2}"
>   # NAT
>   #nat on $ext_if from $int_net to any -> ($ext_if) "AQUI EU FAÃO  O NAT
>   PADRAO"
>   #nat on $int_if proto tcp from $ext_if to $proxy port 3128 -> $int_if
>   "NAT PARA O OUTRO MICRO"
>   # RDR
>   #rdr pass on $int_if proto tcp from !192.168.0.2 to any port 80 ->
>   $proxy port 3128 "REDIRECIONAMENTO DE TODO O TRAFEGO DA PORTA 80 PARA O
>   OUTRO MICRO NA PORTA 3128"
>   # PASS
>   #pass out quick on $ext_if inet proto tcp from any to any port 80 keep
>   state "LIBERACAO DA PORTA 80 PARA SAIDA DE TODOS OS PACOTES"
>   Desde já agradeço a todos.
>   Att,
>   Rodrigo.
>
> -------------------------
>
>
Rodrigo,

Usei essa configuranção:

openbsd1 = pf
openbsd2 = squid

interna = "xl0"
externa = "xl1"
rede = "192.168.1.0/24"
proxy = "192.168.1.110"

no nat on $interna proto tcp from $interna to $interna:network
nat on $interna proto tcp from $interna:network to 192.168.1.110 port 3128
-> $interna
nat on $externa from $interna:network to any -> $externa
no rdr on $interna proto tcp from 192.168.1.110 to any port 80
rdr on $interna inet proto tcp from 192.168.1.0/24 to any port 80 ->
192.168.1.110 port 3128

pass all
pass out log quick proto tcp all flags S/SA modulate state
pass out log quick proto { udp, icmp } all keep state


Lembro que mudei algumas regras depois, mas veja se ajuda.

--

Wanderson Tinti


Mais detalhes sobre a lista de discussão freebsd