Настройка "ядерного" IPFW NAT на FreeBSD 11
em0 - внутренний интерфейс
em1 - внешний интерфейс
Версия FreeBSD:
root@test_machine_bsd11:~ # uname -mrs
FreeBSD 11.0-RELEASE amd64
root@test_machine_bsd11:~ # freebsd-version
11.0-RELEASE
Подгружаем нужные модули ядра:
root@test_machine_bsd11:~ # cat /boot/loader.conf
ipfw_load="YES"
ipfw_nat_load="YES"
Можно подгружать только ipfw_nat.ko - он сам подгрузит ipfw.ko, но лучше перестраховаться.
Разрешаем запуск ipfw в rc.conf:
root@test_machine_bsd11:~ # cat /etc/rc.conf
...
firewall_enable="YES"
firewall_type="/etc/ipfw.rules"
firewall_nat_enable в rc.conf писать не нужно. Теперь это ни на что не влияет.
Правила фаервола:
root@test_machine_bsd11:~ # cat /etc/ipfw.rules
# Правило необходимо чтобы пакеты от самого сервера не попадали в NAT (в правило 07000)
add 02000 allow all from me to any via em1 keep-state
nat 1 config if em1 log reset same_ports deny_in
add 03001 nat 1 all from 192.168.94.0/24 to 8.8.8.8 out via em1
# Правило для "обратного" NAT
add 07000 nat 1 all from any to 214.3.198.40 in via em1
Комментариев нет:
Отправить комментарий