URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 66926
[ Назад ]

Исходное сообщение
"FreeBSD натить 2 сети..."

Отправлено Camb , 14-Июн-06 16:12 
Добрый день, дорогие Opennet'овцы!

Я имею опыт работы в линуксе, iptables.
И вот друган позвал помочь настроить шлюзец на фре, для чего скачал 6.1-stable.

Задача, вроде простая. Пока фрю не ставил. Второй день читаю различные статьи и заметил чот что, что не статься, так обязательно в комментариях критика - луче так, да не так.. и я немного растерян. Будьте добры, подскажите как лучше сделать.

Имеем FreeBSD с 3 сетевыми картами. Одна - в инет.
Две - в локалку, сетки разные - 192,168,1,0    192,168,2,0
надо сделать НАТ в инет =)


Пока я настроен на ipfw + natd. В handbook'e сказано что для влюкчения ipfw не надо пересобирать ядро, он подключится как модуль. А вот остальные опции интересно как? такие как запрет SYNFIN, защита от флуда... и т.п. ?

Если не трудно, на пальцах (по пунктам) расскажите как сделать.

Заранее спасибо!


Содержание

Сообщения в этом обсуждении
"FreeBSD натить 2 сети..."
Отправлено ichard , 14-Июн-06 20:32 
1. Пересобираем ядро:
-создаем собственное ядро:
сp /usr/src/sys/i386/conf/GENERIC /usr/src/sys/i386/conf/GATEWAY && ee GATEWAY

-включаем дополинтельные опции:
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=10
options IPFIREWALL_DEAULT_TO_ACCEPT (в случае, если желаешь пропускать все пакеты, то
                                     есть иметь открытый ipfw)

-компилим и устанавливаем ядро:
cd /usr/src && make buildkernel KERNCONF=GATEWAY && make installkernel KERNCONF=GATEWAY && reboot

Как вариант, можно сделать так sysctl net.inet.ip.ipfw=1 и все это дело в /etc/sysctl.conf

2. После перезагруза необходимо добавить информацию о запуске natd в /etc/rc.conf:

ee /etc/rc.conf

natd_enable="YES"
natd_interface="ифейс_вашей_сетевой_карты"
Можно еще какие нить опции добавить - об этом man natd

3. Cоздаем правила дивертов, то есть, что нам надо - это перенаправлять все пакеты с наших локальных подсетей в мир.

Так как у вас 2 локальные сети, мне кажется, будет благоразумным запустить 2 natd на разные порты, то есть, примерные правила могут быть таковы:
#192.168.0.0
ipfw add 100 natd divert ip from 192.168.0.0/24 to внешний_ип
ipfw add 200 natd divert ip from внешний_ип to 192.160.0.0/24

#192.168.1.0
ipfw add 200 natd divert ip from 192.168.1.0/24 to внешний_ип
ipfw add 300 natd divert ip from внешний_ип to 192.160.1.0/24
Здесь второй нат должен быть запущен на другом порте, для более подробного изучения - man natd.
Желаю успехов!