[FUG-BR] Lusca + bridge + tproxy

Wenderson Souza wendersonsouza em gmail.com
Quarta Setembro 7 17:45:51 BRT 2011


Nenhuma opinião?

Sei que a comunidade do FreeBSD não gosta de dar informações mais
aprofundadas (dar o peixe e sim ensinar a pescar), mas já corri a trás
o quanto eu pude, por isso estou perguntando aqui novamente.

Já formatei a máquina coloquei o FreeBSD-7.4-Release, apliquei os
patch no kernel e no squid30 e estou com o mesmo problema.

Já reformatei a máquina e voltei para o FreeBSD-8.2-Release,
modifiquei no lusca o comm_ips_freebsd.c, recompilei e a mesma coisa.

Creio que o meu problema esteja agora penas no filtro do ipfw. Com
tudo rodando, bridge, lusca, etc.

Os filtros estão incrementando mas não estão "chegando" no lusca, pois
não incrementa nada no access.log, store.log e nem no cache.log (nesse
incrementa apenas quando inicio o lusca, mensagens padrões...).

Estou conseguindo acessar passando pela bridge, tudo normal. A bridge
freebsd está com ip setado e acessando a internet, pingando e
resolvendo nomes. Aparentemente tudo normal.

Estão setando o ip público do freebsd em qual interface? Interna,
Externa ou na Bridge ?


Atenciosamente,

Wenderson Souza
e-mail: wendersonsouza em gmail.com
msn: wendersonsouza em msn.com
skype: wendersonsouza



Em 31 de agosto de 2011 13:49, Wenderson Souza
<wendersonsouza em gmail.com> escreveu:
> Olá todos,
>
> Estou apanhando para fazer o tproxy funcionar no freebsd.
>
> Alguém poderia me dar uma "Luz" ?
>
> Meu cenário:
>
> FreeBSD 8.2-RELEASE sem aplicar nenhum patch (conforme recomendado)
>
> Lusca com o patch aplicado.
> # squid -v
> Squid Cache: Version LUSCA_HEAD-r14809
> configure options:  '--enable-delay-pools' '--enable-removal-policies'
> '--enable-snmp' '--enable-http-violations' '--bindir=/usr/local/sbin'
> '--sbindir=/usr/local/sbin' '--datadir=/usr/local/etc/lusca'
> '--libexecdir=/usr/local/libexec/lusca' '--localstatedir=/var/lusca'
> '--sysconfdir=/usr/local/etc/lusca' '--enable-removal-policies=lru
> heap' '--disable-linux-netfilter' '--disable-linux-tproxy'
> '--disable-epoll' '--enable-auth=basic digest negotiate ntlm'
> '--enable-basic-auth-helpers=DB NCSA PAM MSNT SMB'
> '--enable-digest-auth-helpers=password'
> '--enable-external-acl-helpers=ip_user session unix_group
> wbinfo_group' '--enable-ntlm-auth-helpers=SMB' '--enable-storeio=aufs
> null' '--enable-wccp' '--enable-wccpv2' '--disable-ident-lookups'
> '--disable-kqueue' '--with-large-files' '--enable-large-cache-files'
> '--enable-err-languages=Portuguese'
> '--enable-default-err-language=Portuguese' '--prefix=/usr/local'
> '--mandir=/usr/local/man' '--infodir=/usr/local/info/'
> '--enable-freebsd-tproxy' '--build=amd64-portbld-freebsd8.2'
> 'build_alias=amd64-portbld-freebsd8.2' 'CC=cc' 'CFLAGS=-O2 -pipe
> -fno-strict-aliasing' 'LDFLAGS=' 'CPPFLAGS=' 'CPP=cpp'
>
> squid.conf - http_port 3128 transparent tproxy
>
>
> Bridge ativa e com as interfaces setadas, ips externos (tenho mais de
> um link) e internos setados (para controle interno) na bridge.
>
> regras de firewall:
> rl0 - interna
> rl1 - externa
> # redirect proxy
> ipfw add 150 fwd 127.0.0.1,3128 tcp from 189.x.x.0/25 to any 80 via rl0
> ipfw add 151 fwd 127.0.0.1 tcp from any 80 to 189.x.x.0/25 via rl1
>
> Consigo acessar, com o ip publico setado na maquina atrás da bridge,
> mas não está caindo no proxy.
>
> Apesar de estar incrementando as regras do ipfw, conforme abaixo:
> 00150    3152 649814 fwd 127.0.0.1,3128 tcp from any to any
> dst-port 80 via rl0
> 00151    3018   2283772 fwd 127.0.0.1 tcp from any 80 to any via rl1
>
> Estou acompanhando o cache.log e o access.log e não há nenhum
> incremento ou de erro (informação) ou de acesso.
>
> Agradeço desde já a possível ajuda de todos.
>
>
> Wenderson Souza
> e-mail: wendersonsouza em gmail.com
> msn: wendersonsouza em msn.com
> skype: wendersonsouza
>
>
>
> Em 27 de agosto de 2011 12:04, Wenderson Souza
> <wendersonsouza em gmail.com> escreveu:
>> Hum, entao só precisaria mexer no lusca?
>>
>> Mas mesmo antes de aplicar o patch tentei compilar com IP_BINDANY e deu erro.
>>
>> Vou retornar e testar.
>>
>> Reporto aqui.
>>
>>
>> Wenderson Souza
>> e-mail: wendersonsouza em gmail.com
>> msn: wendersonsouza em msn.com
>> skype: wendersonsouza
>>
>>
>>
>> Em 27 de agosto de 2011 11:39, Marcelo da Silva
>> <marcelo em mginformatica.com> escreveu:
>>> intaum.. aqui no manual:
>>>
>>> FreeBSD 8 already support this, but you will need to change the
>>> IP_NONLOCALOK to IP_BINDANY in src/comm.cc (or
>>> libiapp/comm_ips_freebsd.c under lusca).
>>>
>>> diz q no freebsd 8 ja tem o suporte, so precisa mexer no
>>> libiapp/comm_ips_freebsd.c under lusca
>>>
>>>
>>>
>>> On Sat, 27 Aug 2011 11:35:24 -0300, Wenderson Souza wrote:
>>>> Tentei colocar o options IP_BINDANY conforme o
>>>> http://tproxy.no-ip.org/ mas deu erro também.
>>>>
>>>> O que fiz, apliquei o patch na unha (no código) e estou recompilando
>>>> agora, assim que testar posto aqui.
>>>>
>>>>
>>>> Wenderson Souza
>>>> e-mail: wendersonsouza em gmail.com
>>>> msn: wendersonsouza em msn.com
>>>> skype: wendersonsouza
>>>>
>>>>
>>>>
>>>> Em 27 de agosto de 2011 11:12, Marcelo da Silva
>>>> <marcelo em mginformatica.com> escreveu:
>>>>> no fBSD 8.x  o   IP_NONLOCALBIND    foi substituido pelo IP_BINDANY.
>>>>> axo q nao precisa recompilar
>>>>>
>>>>> http://tproxy.no-ip.org/
>>>>>
>>>>> On Sat, 27 Aug 2011 10:17:52 -0300, Wenderson Souza wrote:
>>>>>> Bom dia,
>>>>>>
>>>>>> Ao tentar compilar o kernel recebi o erro abaixo:
>>>>>>
>>>>>> /usr/src/sys/amd64/conf/PROXY: unknown option "IP_NONLOCALBIND"
>>>>>>
>>>>>> Alguma luz?
>>>>>>
>>>>>>
>>>>>> Wenderson Souza
>>>>>> e-mail: wendersonsouza em gmail.com
>>>>>> msn: wendersonsouza em msn.com
>>>>>> skype: wendersonsouza
>>>>>>
>>>>>>
>>>>>>
>>>>>> Em 27 de agosto de 2011 09:42, Wenderson Souza
>>>>>> <wendersonsouza em gmail.com> escreveu:
>>>>>>> Precisa recompilar o kernel e o lusca posteriormente?
>>>>>>>
>>>>>>> Pois o patch pelo que vi é aplicado no soucre do Kernel, não?
>>>>>>>
>>>>>>> # uname -a
>>>>>>> FreeBSD proxy.xxx.com.br 8.2-RELEASE FreeBSD 8.2-RELEASE #3: Thu
>>>>>>> Aug
>>>>>>> 25 22:43:06 BRT 2011
>>>>>>> root em proxy.xxx.com.br:/usr/obj/usr/src/sys/PROXY  amd64
>>>>>>>
>>>>>>>
>>>>>>> Wenderson Souza
>>>>>>> e-mail: wendersonsouza em gmail.com
>>>>>>> msn: wendersonsouza em msn.com
>>>>>>> skype: wendersonsouza
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Em 27 de julho de 2011 15:10, Hygor <hygor em vipway.com.br>
>>>>>>> escreveu:
>>>>>>>> Boa tarde,
>>>>>>>>  O Lusca está marcando TOS com o patch aplicado?
>>>>>>>>
>>>>>>>> Obrigado pela solução...
>>>>>>>>
>>>>>>>> Hygor Cavalcante
>>>>>>>> FSNETWORK CONSULTORIA
>>>>>>>> Skype: hygorr
>>>>>>>> MSN: hygor em bsd.com.br
>>>>>>>> EMAIL: hygor em bsd.com.br
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Em 24 de julho de 2011 18:43, slp <slp em fsnet.com.br> escreveu:
>>>>>>>>
>>>>>>>>> Ola,
>>>>>>>>>
>>>>>>>>> Testei o patch e tambem funcionou para mim, mesmo cenario, Lusca
>>>>>>>>> em
>>>>>>>>> bridge entre os clientes e a net.
>>>>>>>>>
>>>>>>>>> Obrigado pela solucao.
>>>>>>>>>
>>>>>>>>> Sidnei
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Em 21/07/2011 23:58, Luiz Otavio O Souza escreveu:
>>>>>>>>> > Hello folks,
>>>>>>>>> >
>>>>>>>>> > Eu (finalmente) tenho o lusca funcionando em modo bridge com o
>>>>>>>>> tproxy.
>>>>>>>>> Antes que eu acredite que isso funcionou, alguem mais pode
>>>>>>>>> testar
>>>>>>>>> o patch
>>>>>>>>> abaixo ?
>>>>>>>>> >
>>>>>>>>> > http://loos.no-ip.org/lusca_tproxy.diff
>>>>>>>>> >
>>>>>>>>> > No meu ambiente de teste eu tinha:
>>>>>>>>> >
>>>>>>>>> > Clientes (192.168.0.0/24) ->  xl0 ->  bridge ->  vr0 ->
>>>>>>>>>  internet
>>>>>>>>> >
>>>>>>>>> > Então precisei criar duas regras para acomodar o vai-e-vem dos
>>>>>>>>> pacotes:
>>>>>>>>> >
>>>>>>>>> > # Direciona os pacotes da rede interna para o proxy
>>>>>>>>> > ipfw add 127.0.0.1,3128 tcp from 192.168.0.0/24 to any 80 via
>>>>>>>>> xl0
>>>>>>>>> >
>>>>>>>>> > # Direciona o retorno dos pacotes para o S.O.
>>>>>>>>> > ipfw add 127.0.0.1 tcp from any 80 to 192.168.0.0/24 via vr0
>>>>>>>>> >
>>>>>>>>> > Liguei o ipfw para os pacotes da bridge:
>>>>>>>>> >
>>>>>>>>> > sysctl net.link.bridge.ipfw=1
>>>>>>>>> >
>>>>>>>>> > e modifiquei o http_port do lusca para:
>>>>>>>>> >
>>>>>>>>> > http_port 3128 tproxy transparent
>>>>>>>>> >
>>>>>>>>> > Pronto, tudo funcionou :-) Alguem mais confirma ?
>>>>>>>>> >
>>>>>>>>> > O patch em si é uma variação do outro patch que já fazia o
>>>>>>>>> lusca
>>>>>>>>> funcionar no modo transparente também em bridge (mas ainda não
>>>>>>>>> com
>>>>>>>>> o
>>>>>>>>> tproxy).
>>>>>>>>> >
>>>>>>>>> > A idéia do patch (permitir checar os pacotes no ipfw não
>>>>>>>>> apenas
>>>>>>>>> na saída
>>>>>>>>> mas também na entrada) foi dada pelo Patrick já faz algum tempo,
>>>>>>>>> mas só
>>>>>>>>> agora consegui colocar ela em prática (Patrick, mais uma vez
>>>>>>>>> obrigado !).
>>>>>>>>> >
>>>>>>>>> > Att.,
>>>>>>>>> > Luiz
>>>>>>>>> >
>>>>>>>>> > PS: esse patch inclui um segundo patch que faz o tproxy do
>>>>>>>>> lusca
>>>>>>>>> funcionar sem precisar de qualquer alteração (não precisa ser
>>>>>>>>> executado como
>>>>>>>>> root), talvez depois eu deixe ele separado para evitar
>>>>>>>>> confusões.
>>>>>>>>> > -------------------------
>>>>>>>>> > Histórico: http://www.fug.com.br/historico/html/freebsd/
>>>>>>>>> > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>>>>>>>> >
>>>>>>>>>
>>>>>>>>> -------------------------
>>>>>>>>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>>>>>>>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>>>>>>>>
>>>>>>>>>
>>>>>>>> -------------------------
>>>>>>>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>>>>>>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>>>>>>>
>>>>>>>
>>>>>> -------------------------
>>>>>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>>>>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>>>>
>>>>> -------------------------
>>>>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>>>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>>>>
>>>> -------------------------
>>>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>>
>>> -------------------------
>>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>>
>>
>


Mais detalhes sobre a lista de discussão freebsd