[FUG-BR] RES: Do Open para o FreeBSD

Marcio A. Sepp marcio em zyontecnologia.com.br
Terça Agosto 7 16:31:32 BRT 2007



Att.
Márcio A. Sepp
ZYON TECNOLOGIA LTDA
(49) 3444-4591
(49) 8405-9215
 

> -----Mensagem original-----
> De: freebsd-bounces em fug.com.br 
> [mailto:freebsd-bounces em fug.com.br] Em nome de Danilo Lara
> Enviada em: terça-feira, 7 de agosto de 2007 16:07
> Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)
> Assunto: Re: [FUG-BR] Do Open para o FreeBSD
> 
> On Tue, 2007-08-07 at 15:58 -0300, Marcio A. Sepp wrote:
> > Boa tarde,
> > 
> > 
> > A nossa empresa vem trabalhando a algum tempo com o OpenBSD e agora 
> > estamos partindo para o FreeBSD.
> > Porém não estamos conseguindo fazer o firewall (pf) 
> funcionar como era 
> > no OpenBSD.
> > 
> > A versão do FreeBSD é a 6.2. Segue abaixo o firewall para 
> vossa análise.
> > Agradeço se alguém puder me dar uma luz.
> > 
> > ext_if="xl0"    # replace with actual external interface 
> name i.e., dc0
> > int_if="xl1"    # replace with actual internal interface 
> name i.e., dc1
> > internal_net="192.168.100.0/24"
> > 
> > scrub in all
> > 
> > nat on $ext_if from $internal_net to any -> ($ext_if)
> > 
> > rdr pass on $ext_if proto { tcp, udp } from any to $ext_if 
> port www -> 
> > 192.168.100.10 port 80
> > 
> > block in log on $ext_if
> > pass in on $int_if
> > pass  in  on $ext_if proto tcp from any to $ext_if port 22 
> keep state 
> > pass  out on $ext_if proto { tcp, udp } all keep state
> > 
> > pass out on $int_if
> > 
> > 
> > Quando starto o firewall, e de fora da empresa, tento dar 
> um telnet no 
> > ip externo, na prota 80, o telnet demora e não conecta. Já 
> quando eu 
> > baixo o firewall ou quando comento a linha do 
> redirecionamento, dá de 
> > cara a
> > mensagem: "Connection refused". 
> > No comando: tcpdump -n -e -ttt -i pflog0 não gera log nenhum.
> > 
> > Sabem me indicar pq no FreeBSD o pf não funciona como no 
> Open? Quais 
> > as diferenças do pf - Open para o pf - FreeBSD?
> > 
> > 
> > Att.
> > Márcio A. Sepp
> Crie uma regra autorizando a passagem de pacotes na porta 80.
> ex.: pass in on $ext_if proto tcp from any to $ext_if port 80 
> No histórico da lista tem uma discussão sobre isso,porque 
> parece que no openbsd quando você criar a regra de rdr ele já 
> autoriza por default,dá uma pesquisada que vai entender melhor.
> t+

Tentei tanto com o comando:
Rdr pass  (para redirecionar e já dar passagem), quanto com o comando
Rdr on ...  (para somente redirecionar e abaixo coloquei a regra de
passagem.

Em ambos os casos não está conectando...  Apenas demora...  Demora... Dá a
impressão de que a conexão é estabelecida, mas não tem um retorno. 

Segue abaixo os testes que fiz:
Tentei com a regra padrão que usamos no OpenBSD: 
rdr pass on $ext_if proto { tcp, udp } from any to $ext_if port www ->
192.168.100.10 port 80

Depois tentamos:
rdr on $ext_if proto { tcp, udp } from any to $ext_if port www ->
192.168.100.10 port 80

E a passagem...  

pass in quick on $ext_if proto tcp from any to $ext_if port 80 flags S/SA
modulate state
pass in quick on $ext_if proto udp from any to $ext_if port 80 keep state




Mais detalhes sobre a lista de discussão freebsd