----- Mensagem original ----- > De: "Rafael Chagas Pelegrineli" <rafpele...@yahoo.com.br> > Para: "Lista Brasileira de Discussão sobre FreeBSD" <freebsd@fug.com.br> > Enviadas: Quinta-feira, 24 de setembro de 2015 16:27:35 > Assunto: [FUG-BR] PF com RDR na externa mas para acesso pela rede interna
> Boa tarde. Tenho um FreeBSD 8.4 com PF e o utilizo como gateway na empresa, > então o forward está habilitado e o firewall rodando com NAT da rede interna > para externa traduzindo para o endereço externo do servidor, e RDR de portas > específicas no endereço externo para endereços internos na rede. O problema é > uma máquina interna acessar uma porta específica utilizando o IP externo como > destino, mas que tem um RDR para outra máquina na rede interna. > > Ex: Tenho um servidor com endereço 192.x.x.60 com um serviço rodando na porta > 7070. No gateway tenho uma regra que redireciona os acessos ao endereço > externo > 200.x.x.131 na porta 7070 para o servidor interno 192.x.x.60 na porta 7070. > Mas > se uma máquina na rede interna com endereço 192.x.x.96 precisar acessar o > serviço utilizando o IP externo 201.x.x.131 na porta 7070, o RDR não funciona. > Regras do firewall com relação a esse > problema:================================================ext_if0="re2"ext_addr0="200.x.x.131"ext_net="{ > 200.x.x.128/26}" > > int_if0="re0"int_addr0="192.x.x.1"int_net="{ 192.x.x.0/16 }" > set fingerprints "/etc/pf.os"set block-policy returnscrub in allset skip on > lo0 > > nat pass on $ext_if0 from any to any -> $ext_addr0 > > rdr pass on $ext_if0 proto tcp from any to $ext_addr0 port 7070 -> 192.x.x.60 > pass out allblock in on $ext_if0 all > > ================================================= > Se estou em um computador fora da rede, um telnet para 200.x.x.131 7070 > funciona, mas dentro da rede não.Alguma dica? > Rafael Chagas Pelegrineli > ------------------------- > Histórico: http://www.fug.com.br/historico/html/freebsd/ > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd Oi, O melhor seria usar DNS com view.... Mas se não tem outra saída, este tipo de cenário eu costumava fazer direto com pf assim: no nat on $int_if proto {tcp, udp} from $int_if to <rede_interna> nat on $int_if proto {tcp, udp} from <rede_interna> to $ip_interno port 8080 -> $int_if rdr on $int_if proto tcp from <rede_interna> to $ip_externo port 8080 -> $ip_int_if port 8080 Assim tu consegue injetar, através de um NAT específico na interface interna, o pacote de volta pra rede interna. Tenta colocar isso no pfsense. (A porta 8080 é do exemplo, claro... ;-) Abraço! --- Rafael Mentz Aquino LK6 Soluções em TI Rua Domingos de Almeida, 135 sala 1102 Centro - Novo Hamburgo - RS (51) 3065-6001 - 9999-7030 www.lk6.com.br Catálogo Virtual: http://www.youblisher.com/p/1205960-LK6-TI/ ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd