[FUG-BR] migrando para ipfw

Daemon BR unix.list em gmail.com
Quinta Março 27 13:27:52 BRT 2008


Simplificando...

A Seguinte regra


IPF="ipfw -q add"
ipfw -q -f flush

$IPF 3 divert natd via em0

#loopback
$IPF 20 allow all from any to any via lo0
$IPF 30 deny all from any to 127.0.0.0/8
$IPF 40 deny all from 127.0.0.0/8 to any
$IPF 50 deny tcp from any to any frag

# statefull
$IPF 60 check-state
$IPF 70 allow tcp from any to any established
$IPF 80 allow all from any to any out keep-state

$IPF 150 allow tcp from any to any 25 in via em0
$IPF 160 allow tcp from any to any 25 out via em0
$IPF 170 allow udp from any to any 53 in via em0
$IPF 175 allow tcp from any to any 53 in via em0
$IPF 180 allow udp from any to any 53 out via em0
$IPF 185 allow tcp from any to any 53 out via em0
$IPF 200 allow tcp from any to any 80 in via em0
$IPF 210 allow tcp from any to any 80 out via em0

$IPF 220 allow all from any to any via vr0

# deny and log everything
$IPF 500 deny log all from any to any

Está regra acima está liberando todo acesso... motivo:
$IPF 60 check-state
$IPF 70 allow tcp from any to any established
$IPF 80 allow all from any to any out keep-state

Como ficaria para liberar somente a porta 80 (navegação) ?


Em 27/03/08, Daemon BR <unix.list em gmail.com> escreveu:
>
> Nossa estou apanhando muito no IPFW para fazer um exemplo simples abaixo,
> (em iptables).
> No caso estou postando um exemplo onde eu DROPO tudo, e libero somente a
> navegação na rede interna (80,53,443).
>
>
> iptables -A INPUT -m state --state INVALID -j DROP
> iptables -A INPUT  -i lo -j ACCEPT
> iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
> iptables -A INPUT -i eth0 -s IPCOMACESSOEXTERNOSSH -p tcp --dport 22 -j
> ACCEPT
> iptables -A INPUT -i eth1 -j ACCEPT #Libera tudo na INPUT para rede local
>
> iptables -A FORWARD -m state --state INVALID -j DROP
> iptables -A FORWARD -p icmp -j ACCEPT
> iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
> iptables -A FORWARD -i eth1 -p tcp --dport 53 -j ACCEPT
> iptables -A FORWARD -i eth1 -p udp --dport 53 -j ACCEPT
> iptables -A FORWARD -i eth1 -p udp --dport 80 -j ACCEPT
> iptables -A FORWARD -i eth1 -p tcp --dport 443 -j ACCEPT
> iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
>
>  Minha grande dúvida é no estado dos pacotes do ipfw.
> Como faço o ESTABLISHED,RELATED no ipfw ? (Estou colocando na 1 regra, e
> automáticamente ele libera tudo).
> Preciso numerar as regras ? (Qual o motivo ?, pq sem colocar os números as
> mesmas funcionam).
>
> Segue abaixo o ipfw, onde estou liberando tudo... (Mesmo assim não está
> pingando...)
>
> #!/bin/sh
> IPF="ipfw -q add"
> ipfw -q -f flush
>
> $IPF 3 divert natd via em0
> $IPF 5 check-state
>
> $IPF 7 pass all from any to any via vr0 keep-state
>
> #loopback
> $IPF 10 allow all from any to any via lo0
> $IPF 20 deny all from any to 127.0.0.0/8
> $IPF 30 deny all from 127.0.0.0/8 to any
> $IPF 40 deny tcp from any to any frag
> $IPF 150 allow tcp from any to any 25 in via em0
> $IPF 160 allow tcp from any to any 25 out via em0
> $IPF 170 allow udp from any to any 53 in via em0
> $IPF 175 allow tcp from any to any 53 in via em0
> $IPF 180 allow udp from any to any 53 out via em0
> $IPF 185 allow tcp from any to any 53 out via em0
> $IPF 200 allow tcp from any to any 80 in via em0
> $IPF 210 allow tcp from any to any 80 out via em0
>
> $IPF 220 allow all from any to any via vr0
> # deny and log everything
> $IPF 500 deny log all from any to any
>
>
> Alguma alma boa, pode postar como ficaria este exemplo do iptables.
>
> obrigado
>


Mais detalhes sobre a lista de discussão freebsd