[FUG-BR] Ipfw - Natd, de novo !!!

Marcelo Gondim gondim em bsdinfo.com.br
Quinta Janeiro 12 15:35:44 BRST 2012


Em 12/01/2012 15:31, Marcelo Gondim escreveu:
> Em 12/01/2012 14:32, Adiel de Lima Ribeiro escreveu:
>> Não sei se é uma boa idéia, mas vou migrar pro PF, vou ter que aprender
>> as regras, mas tudo bem, ele me parece melhor que o IPFW.
>> O que vocês tem a me dizer ?
> Você precisaria aprender 2. rsrsrsrsr
> Não importa qual você vai usar o problema que está tendo parece mais de
> conceito sobre Firewalls que dá própria aplicação.
> Confesso que quando saí do Netfilter/IPTables e vi o ipfw e o pf quase
> pirei nas regras mas o que ajuda mesmo é o conceito, graças à ele hoje
> já tenho todos os meus Firewalls convertidos para pf e ipfw.
>
> Vou fazer algo que não deveria pois acertos e erros levam à aprendizagem
> e mais que tudo aumento da experiência. Como o Irado dizia... melhor
> ensinar à pescar que já dar o peixe pronto.
>
> Ps: gosto até de pescar mas limpar o peixe não é nada legal.
> ahahahahahah Fazer o que?
>
> Vou fazer o seguinte ambiente imaginário:
>
> Firewall com 2 interfaces de rede: em0 para a Internet e em1 para a rede
> Interna.
> Rede Interna: 192.168.0.0/24
>
> estação
> Firewall
> ======
> 192.168.0.2<=======>   192.168.0.1/24(em1)      10.0.0.1/24(em0)
> <===========>  INTERNET
>
> No seu Kernel compilado:
>
> options         IPFIREWALL
> options         IPFIREWALL_VERBOSE
> options         IPFIREWALL_VERBOSE_LIMIT=100
> options         IPFIREWALL_DEFAULT_TO_ACCEPT
> options         IPFIREWALL_FORWARD
> options         IPFIREWALL_NAT
> options         LIBALIAS
> options         DUMMYNET
> options         IPDIVERT
>
> No script de Firewall:
>
> ##############################################
> #!/bin/sh
> fw="/sbin/ipfw"
>
> ext_if="em0"
> int_if="em1"
>
> $fw disable one_pass
> $fw -f flush
> $fw zero
> $fw table all flush
>
> # Estacoes
> $fw table 1 add 192.168.0.2
> $fw table 1 add 192.168.0.3
> $fw table 1 add 192.168.0.4
>
> $fw add allow all from any to any via lo0
> $fw add deny all from 127.0.0.0/8 to any
> $fw add deny all from any to 127.0.0.0/8
>
> $fw add deny all from any to any not antispoof
>
> # Redireciona para o natd
> $fw add divert 8668 ip from 192.168.0.0/24 to any out via $ext_if
> $fw add divert 8668 ip from any to me in via $ext_if
>
> # Permite IPs na table 2 o acesso à DNS externo
> $fw add allow udp from "table(2)" to any 53 keep-state
> $fw add allow tcp from "table(2)" to any 53 setup keep-state
Correção em tempo é "table(1)"

>
> # Permite IPs para acesso web
> $fw add allow tcp from "table(2)" to any 80 setup keep-state
>
> $fw add allow tcp from me to any out setup keep-state
> $fw add allow all from me to any out keep-state
> $fw add 65534 deny all from any to any
>
> ###########################################################
>
> # natd.conf
> instance default
> interface em0
> dynamic no
> same_ports yes
> use_sockets yes
> unregistered_only yes
>
> Bem esse é um script bem simples, tem que funcionar aí. Basta agora você
> adaptar para a sua realidade.
>
> Melhor não consigo fazer pra vc entender rsrsrsr
>
>>
>> -----Original Message-----
>> From: Lucas Dias<lucasmcz em gmail.com>
>> Reply-to: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)
>> <freebsd em fug.com.br>
>> To: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)
>> <freebsd em fug.com.br>
>> Subject: Re: [FUG-BR] Ipfw - Natd, de novo !!!
>> Date: Thu, 12 Jan 2012 13:06:35 -0300
>>
>>
>> Adiel
>>
>> Então você deve estar esquecendo de algum detalhe.
>> Reveja o que os colegas Marcelo Gondim e Luiz Gustavo falaram.
>>
>> Se for possível, e resolver seu problema, usa o pf, pois ele é cheio de
>> recursos interessantes para NAT.
>> Agora, se for questão de honra colocar pra funcionar o NAT com o IPFW,
>> reveja com calma as regras e as ordens das mesmas
>>
>> Vale ressaltar que nat from any to any não é muito legal...
>> entendo any, como 0.0.0.0/0, eu acredito que você quer fazer nat sua rede,
>> algo como 192.168.10.0/24.
>>
>> Seja um pouco mais seletivo na criação das regras.
>>
>> Os Scripts do Patrick e a apostila do treinamento (que lembra a história do
>> livro horrivel hehehe) estão com muito conteúdo que vão lhe ajudar.
>>
>> Abraços e espero ter ajudado...
>>
>> # flames>   /dev/null (by irado, o furioso com tudo)
>> RIP Irado
>>
>>
> -------------------------
> 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