Redirecionamento com flags natd no FreeBSD

Redirecionamento com flags natd no FreeBSD

Estou tentando configurar um servidor NAT básico. Quero que todo o tráfego vindo do mundo externo para o servidor NAT seja redirecionado para outra máquina, onde tenho um serviço lipcap em execução para analisar esse tráfego.

Eu tentei -redirect_port e -redirect_address na parte natd_flags em rc.conf mas nada funciona... alguma ideia?

Responder1

O espaço do usuário natdprecisa ipfwestar ativado. O IPFW captura pacotes e os redireciona para os natdendereços que traduzem. Mas hoje em dia você pode usar o kernel nat incorporado no ipfw.

Vamos habilitar o mecanismo IPFW

# /etc/rc.conf
. . . . .
gateway_enable="YES"
firewall_enable="YES"
firewall_nat_enable="YES"
firewall_script="/etc/rc.ipfw"
. . . . .

E vamos configurar o redirecionamento do kernel:

# /etc/rc.ipfw
. . . . .
oip="1.2.3.4"   # Outer IP looking to the internet
tip="10.0.0.100 # Target host
ipfw nat 1 config redirect_addr ${tip} ${oip}
. . . . . 

Isso é tudo.

Responder2

O firewall PF possui NAT e redirecionamento integrados. Adicione isto ao /etc/rc.conf:

gateway_enable="YES"
pf_enable="YES"

E configure o firewall. Adicione estas linhas ao /etc/pf.conf:

ext_if=em0
ext_addr = N.N.N.N  (your external IP)

int_if=em1
int_net=10.0.0.0/8
int_addr=10.0.0.1
libcap_host=10.0.0.2

nat on $ext_if from $int_net to any -> $ext_addr
rdr on $ext_if from any to $ext_addr -> $libcap_host

A regra NAT fará o que você espera, enviará todo o tráfego gerado na sua rede de internet para o mundo através do IP externo do gateway. A regra rdr roteará todas as conexões de entrada para o host de destino.

informação relacionada