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

Исходное сообщение
"PF и samba, Настройка PF для работы smb между внутренней и dmz сетями"

Отправлено xkw , 10-Июн-07 09:50 
Приветствую!
Вопрос по повлду настройки шлюза с firewall: PF(Pocket Filter),
на предмет хождения netbios пакетов из одной сети в другую и обратно безпрепятственно, - может быть кто сталкивался.
Вводные:
Есть сетка рабочая, есть некая DMZ, в DMZ есть файловый сервер и требуеться его видеть через microsoft nighthood(сетевое окружение), монтировать в винде сетевые диски и так далие...
Обе сети соединяет шлюз FreeBSD 6.2 RC1 с двумя сетевыми интерфейсами.

Я незнаю как такие вещим делаються и потому задаю вопрос здесь.
Вот что я пробывал:
1) сделать натинг широковещательных пакетов из одной сети в другую, - не вышло
2) сделать редирект широковещательных пакетов из одной сети в другую от имени сервера..
всё эт несработало ибо зачем ходить локальным широковещательным пакетам одной сети, скажем 192.168.0.0/24(work) в подсеть 192.168.1.0/24(DMZ)?:(
3) я попытался настроить мост с помощью options if_bridge в ядре и соответствующих настроек для нового интерфейса моста. Широковещал стал проходить но отказался нормально работать dhcp стоящий на сервере - он незнал с какого интерфейса какая подсеть приходит, ибо на bridge0 оно всё перемешивалось, и в сеть work стал выдавать ип-ки и настройки сети DMZ:))


Очень надеюсь увидеть от вас какие нибудь идеи, и/или примеры относительно данной задачи.

С Уважением, xkw@


Содержание

Сообщения в этом обсуждении
"PF и samba, Настройка PF для работы smb между внутренней и d..."
Отправлено xkw , 10-Июн-07 10:27 
>3) я попытался настроить мост с помощью options if_bridge в ядре и
>соответствующих настроек для нового интерфейса моста. Широковещал стал проходить но отказался
>нормально работать dhcp стоящий на сервере - он незнал с какого
>интерфейса какая подсеть приходит, ибо на bridge0 оно всё перемешивалось, и
>в сеть work стал выдавать ип-ки и настройки сети DMZ:))

- Очень правильное решение!
И оно будет работать!

cat /etc/rc.conf:

# Routing enabling:
gateway_enable="YES"
router="/sbin/routed"
router_enable="YES"
router_flags="-q"

# Network Bridging:
cloned_interfaces="bridge0"
ifconfig_bridge0="addm fxp0 addm fxp1 up" # bridget interfases

# Firewall:
pf_enable="YES"
pf_rules="/etc/pf.conf"
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
pflog_program="/sbin/pflogd"

#DHCP:
dhcpd_enable="YES"
dhcpd_ifaces="fxp0 fxp1" # But not brigre0!!!

==============


cat /etc/pf.conf:

work_if="fxp0" # Work Network
dmz_if="fxp1" # DMZ zone interface

work_net="192.168.0.0/24"
dmz_net="192.168.1.0/24"

# Logging blocked packets:
block in log all
block out log all

# WORK NETWORK:
pass  in  on $work_if proto tcp from any to $work_if port 22 keep state
pass  in  on $work_if from $work_net to any keep state
block out on $work_if all
state

# DMZ:
pass  in  on $dmz_if proto tcp from any to $dmz_if port 22 keep state
pass  in  on $dmz_if from $dmz_net to !$work_net keep state
block out on $dmz_if all
pass  out on $dmz_if proto { tcp, udp } from any to $dmz_net port { 21 22 53 80 2049 111 745 } keep state
pass  out on $dmz_if proto { tcp, udp } from $flat_net to $dmz_net port { 139 137 } keep state


================

Коротко о проделанном:
  - в rc.conf мы указали для dhcp - работатьтолько на конкретных интерфейсах, без bridge0; Теперь он не путаеться:)
  - в pf.conf сначало заблокировали всё, потом отдельно по каждому интерфейсу прописали ограничение на вход и на выход пакетов:
  1) для рабочей сети - в любую другую без ограничений, и ответы от серверов разрешать.
на вход - никого.
плюс разрешить подключаться на шлюз по 22 порту;

  2) для DMZ: разрешить подключаться на шлюз по 22 порту;
     разрешить любые исходящие соединения из сети DMZ кроме как в рабочую сеть work(например разрешить серверам доступ к интернету)
     заблокировать все входящие в сеть DMZ соединения, кроме портов типа 21, 22, 53, 80, ... , и 139, 137 - это порты нашего NETBIOS samba;

Всё, можно жить долго и счастливо! Удачи!)))

regards, procool@