Boa tarde,

Enfrentei um problema de redirecionamento de portas sobre 2 nats+vpn
que já resolvi mas não achei que resolvi da melhor forma possível.

Vejam o cenário abaixo


10.0.0.1
lan______
               |
ppp1 -------|Fire|------VPN----------|Fire2|---------lan
200.x.x.x     172.16.0.1-172.16.0.4      192.168.1.1

Eu queria redirecionar portas para a maquina 192.168.1.27. Então o
pacote vinha pela internet, sofria um PREROUTING -ippp1 DNAT --to
192.168.1.27:80

No fire 2 eu coloquei um forward 0/0 para 192.168.1.27:all

Aparentemente eu acreditei que isto já funcionaria... pois da rede
10.0.0.0 eu consigo fazer este transporte. Eu acesso a maquina
192.168.1.27:80 tranquilo. Logo, pensei: faço um redirect direto para
a máquina 27 e o pacote vai belezinha...

Nada feito. O pacote até era roteado para a vpn. Entrava no túnel,
saía na outra ponta. Mas o segundo firewall nao passava o pacote para
a rede interna.

Depois disso tentei 2 PREROUTING... um da internet para a vpn (ip do
fire2: 0.4) e outro Prerouting no fire 2 para a maquina.

16:26:22.908391 IP (tos 0x0, ttl 125, id 36446, offset 0, flags [DF],
proto 6, length: 48) 20178154030.3933 > 172.16.0.4.3721: S [tcp sum
ok] 1446397806:1446397806(0) win 65535 <mss 1400,nop,nop,sackOK>

Mesma coisa, o pacote chega até na ponta do segundo firewall. Mas não
passa para a rede interna.



É necessário mencionar que ocorrem 2 nats no processo:

maquinas da rede 192.168.1.0 ---- NAT ---- para 172.16.0.1 ---- NAT
---- internet

eu acho que é isto que está atrapalhando a coisa toda.

Coloquei um redirecionamento de portas por software para testar no FIRE2:


10.0.0.1
lan______
               |
ppp1 -------|Fire|------VPN----------|Fire2|---------lan
200.x.x.x     172.16.0.1-172.16.0.4      192.168.1.1


Então fiz um PREROUTING para o 172.16.0.4 (fire2) e a criei as regras
de input output e o sofware redirecionava para a máquina
192.168.1.27:80.

Funcionou metade! O pacote agora vinha da ppp1, entrava ia até o
FIRE2, era redirecionado belezinha para a máquina (por software). Mas
o pacote só voltava até o fire 1... não conseguia sair para a
internet.

O pacote ia:
ppp1 -------|Fire|------VPN----------|Fire2|---------lan
Mas a volta era assim
lan-------|Fire2|------VPN----------|Fire|---------DROP


Para conseguir solucionar, tive que fazer um redirecionamento por
software em cada firewall. Então as regras foram: INPUT no fire 1
vindo de ppp1, output para fire 2. input no fire2 e output para rede.

Pronto. funcionou, está belezinha. Aprendi a mecher no
iptables+tcpdump+nmap graças a estes problemas. Foi até bom. Acho que
o problema foi por causa destes 2 nats + problemas de roteamento de
pacotes pela vpn.

Mas gostaria de entender melhor ao inves de achar. Hehe.Porque um
postrouting direto não funcionou. Foi a vpn ou os NATS? Alguem já
passou por algo semelhante?


Att,

Pucci.
---------------------------------------------------------------------------
Esta lista é patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br

Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utilização da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html

Responder a