[FUG-BR] Esclarecimento RDR PASS no PF
Lutieri G.
lutierigbtrabalho em gmail.com
Quinta Junho 28 16:04:01 BRT 2007
Olá Lista!
Estou aqui apenas para dizer que compreendi por inteiro a regra RDR e
nat e afirmar que a palavra chave PASS, que já foi dita nessa lista
que não tem efeito, TEM SIM.
Vou colocar alguns exemplos de regras aqui para facilitar o entendimento.
*****NAT Sem usar o PASS*****
int_if=em0
ext_if=em1
ext_ip=200.0.0.0
nat on $ext_if from 192.168.1.10 to any -> $ext_if
block all
pass out on $ext_if from $ext_ip to any keep state
pass in on $int_if from 192.168.1.10 to any keep state
pass out on $ext_if from 192.168.1.10 to any keep state
***************
Agora o mesmo NAT:
*****NAT USANDO o PASS*****
int_if=em0
ext_if=em1
ext_ip=200.0.0.0
nat pass on $ext_if from 192.168.1.10 to any -> $ext_if
block all
####pass out on $ext_if from $ext_ip to any keep state
pass in on $int_if from 192.168.1.10 to any keep state
####pass out on $ext_if from 192.168.1.10 to any keep state
***************
Li em alguns lugares que não funcionava o PASS ou só estava habilitado
no OpenBSD. Porém está provado nos exemplos acima que realmente quando
usada a palavra chave PASS em uma regra NAT não são necessárias criar
regras de filtragem NESSA INTERFACE. Acho que é aí que está o pulo do
gato. Como pode ser visto apenas tive que permitir a entrada de
pacotes na interface interna. Já na interface externa, quando usado
PASS, não é necessária regras de filtragem.
Como RDR é a mesma coisa. Alguns exemplos:
*****RDR Sem usar o PASS*****
int_if=em0
ext_if=em1
ext_ip=200.0.0.0
rdr on $ext_if proto tcp from any to $ext_ip port 5900 -> 192.168.1.10
block all
pass in on $ext_if proto tcp from any to 192.168.1.10 port 5900 keep state
pass out on $int_if proto tcp from any to 192.168.1.10 port 5900 keep state
***************
O mesmo RDR com o PASS:
*****RDR Usando o PASS*****
int_if=em0
ext_if=em1
ext_ip=200.0.0.0
rdr pass on $ext_if proto tcp from any to $ext_ip port 5900 -> 192.168.1.10
block all
####pass in on $ext_if proto tcp from any to 192.168.1.10 port 5900 keep state
pass out on $int_if proto tcp from any to 192.168.1.10 port 5900 keep state
***************
Novamente, quando usado o PASS não precisa ser criado as regras de
filtragem na interface externa! Porém na interface interna é
necessário sim. Do contrário seria um furo.
Espero que tenha ficado claro e ao mesmo tempo morto esse assunto de PASS.
Boa tarde a todos!
--
Att.
Lutieri G. B.
Mais detalhes sobre a lista de discussão freebsd