Показаны сообщения с ярлыком kernel nat. Показать все сообщения
Показаны сообщения с ярлыком kernel nat. Показать все сообщения

среда, 21 июля 2010 г.

Разрешение пинга в ядерном нате FreeBSD

Понадобилось разрешить всем пользователям пользоваться пингом.
Делаеться следующей командой.
 ipfw add 100 nat 123 ip from any to any icmptypes 0,3,4,8,11
 Всё.

вторник, 10 марта 2009 г.

Kernel nat на FreeBSD 7,1

Port mapping и открытие портов наружу во FreeBSD 7.1 (ipfw + kernel nat)

Для начала надо пересобрать ядро со следующими опциями

options IPFIREWALL #firewall
options IPFIREWALL_VERBOSE #enable logging to syslogd(8)
options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default
options IPFIREWALL_FORWARD
options DUMMYNET
options IPFIREWALL_NAT #ipfw kernel nat support
options LIBALIAS

Далее пересобираем ядро:

cd /usr/src/
make buildkernel KERNCONF=Yourkernel && make installkernel KERNCONF=Yourkernel

shutdown -p now

Далее кусок файла конфигурации с примером.
192.168.1.132 - ip адрес сетевой карты смотрящей наружу
остальное внутренние адреса

#!/bin/sh
# здесь просто удаляю старые правила
ipfw -f flush
ipfw nat 122 delete

# разрещаю все через loopback
ipfw add allow all from any to any via lo0

# делаю нат на ip смотрящем наружу, same_ports - для попытки сохранить номера портов при нате
# пробрасываю все что приходит на порт 9999 на тот же порт внутренней машины

ipfw nat 123 config ip 192.168.1.132 log same_ports \
redirect_port tcp 192.168.4.86:9999 9999 \
redirect_port tcp 192.168.4.46:123 9199
# этот кусок нужен что бы у машины был не полный нат а только порт который я разрешил,
# потому что вообще в интернет буду пускать через проксю.
ipfw add 100 nat 123 tcp from 192.168.4.86 9999 to any
ipfw add 100 nat 123 tcp from any to 192.168.4.86 9999

# здесь я разрешаю клиенту с ip 192.168.4.86 коннектится к любым серверам по 25 порту,
# но только по нему.
ipfw add 100 nat 123 tcp from 192.168.4.86 to any 25
# а здесь делаю полный нат клиенту
ipfw add 100 nat 123 tcp from 192.168.4.46 to any
# это что бы был нат, иначе ничего не будет работать, правило для выпуска клиентов наружу
ipfw add 100 nat 123 ip from any to 192.168.1.132