12 julho, 2007

Firewall em FreeBSD (pf) e Conectividade Social

Levante a mão quem administra um servidor e não teve problemas com a Conectividade Social da nossa querida Caixa Econômica Federal, hein, você levantou... ah tá, pode ir ao banheiro sim... Não tem como, o sistema sem vergonha que não gosta de proxy/firewall.

Mas recentemente, depois de muita pesquisa e informações redundantes, eis que simplifiquei como implementar em firewall PF no FreeBSD, acredito que a mesma regra aplique-se ao OpenBSD, NetBSD e DragonflyBSD visto que todos utilizam o PF como opção de Firewall. Inicialmente defini duas macros (ou variáveis), uma relativa as faixas de IP que a C.E.F utiliza, e outra relativa as portas que o programa desktop da Conectividade Social utiliza:
IPCaixa = "{ 200.252.47.0/24, 200.201.160.0/20, 200.201.173.0/24 }"
PTCaixa = "{ 1494, 2004, 2631 }"


Após isso mudei o meu redirecionamento para o proxy transparente, ficando ele agora assim:
rdr pass on $int_if from $int_if:network to !200.201.160.0/20 port 80 -> 127.0.0.1 port 3128
Porém ao fazer isso, note que você deve liberar a passagem na interface interna do seu firewall para as faixas da C.E.F. na porta 80, ou seja:
pass in quick on $int_if from $int_if:network to $IPCaixa keep state


Pronto, mais uma 'dor de cabeça' resolvida. Caso você passe por algum outro problema, avise-me ...

Um comentário:

  1. Boa cara, informação rara pra pf, tô migrando agora do linux para os bsds e essa informação vai ajudar pra caramba. vlew.

    ResponderExcluir