Em 11/01/2012 19:12, Marcelo Gondim escreveu: > Em 11/01/2012 17:40, Adiel de Lima Ribeiro escreveu: >> Vou tentar ser mais prático, mudarei de exemplo. >> Vamos supor que tenho um servidor IPFW. >> em0 - interface externa, internet. >> em1 - interface interna, lan. >> Ipfw com política fechada. >> >> Quero fazer um nat da lan para a internet, para que a lan possa navegar, ou >> seja, porta 80. >> Quando coloco do jeito abaixo, funciona: >> >> ipfw add divert natd ip from any to any >> ipfw add allow ip from any to any >> >> Mas isso está permitindo tudo. >> >> Quero restringir para que seja feito o nat apenas da lan, restrito a >> navegação na internet. Fiz assim, mas não funcionou: >> >> ipfw add divert natd tcp from {lan} to any 80 >> ipfw add allow tcp from {lan} to any 80 > Adiel procure separar as coisas. NAT você precisa fazer para qualquer IP > não público acessar a Internet. Não se preocupe com o NAT para limitar o > acesso, se preocupe com as regras de filtragem. O NAT como coloquei em > outros e-mails seria a forma que vejo menos custosa porque você não > precisa fazer NAT de tudo e sim dos IPs internos RFC 1918 ( > 192.168.0.0/16, 10.0.0.0/8 e 172.16.0.0/12) independente das regras. > > Depois do NAT feito e funcionando aí você faz a política de liberação > que deseja, procure sempre liberar o DNS 53/udp e algumas vezes o 53/tcp > para os servidores de DNS que você está usando externamente. Dessa forma > suas estações vão pelo menos resolver os endereços, sem resolução não > existe acesso por nome. :) Outra coisa que esqueci de dizer, se você está bloqueando tudo então você precisa escolher se vais usar um firewall stateless ou stateful. Acredito que o seu problema está aí. Quando usamos um Firewall em stateless precisamos colocar regras de saída e de entrada isso em uma política default de tudo bloqueado.
Já se você usar regras stateful você só precisaria da saída. Um exemplo: ipfw add allow tcp from any to any 80 setup keep-state Nesse caso acima estou dizendo que permito a rede acessar a porta 80/tcp exigindo o handshake e fazendo o stateful Se não for usar o stateful aí teria que fazer: ipfw add allow tcp from any to any 80 ipfw add allow tcp from any 80 to me Sacou a diferença? Logicamente que isso é um pequeno exemplo. :) > >> O que estou fazendo de errado ? >> Agradeço a todas as sugestões e peço desculpas se não fui claro em minha >> dúvida. >> >> Obrigado. >> >> > ------------------------- > 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