Страница 1 из 1

PF + dmz + 2 провайдера

Добавлено: 2008-02-20 11:21:39
demondem10
Не могу справиться с такой траблой! есть сервак (router) с freebsd 6,2.- на нем pf.config . Есть дмз в нем два сервера web(ip 10.10.0.3) и ftp(ip 10.10.0.4), подсоединенных к интерфейсу em0 на routere. Два прова bce0 и второй bce1. Настройки сл.

Код: Выделить всё

# rc.conf 
defaulgateway="192.168.0.100"
bce0="192.168.0.102 netmask 255.255.255.248"
bce1="172.168.7.102 netmask 255.255.255.248"
em0="10.10.0.1 netmask 255.255.255.248"
на routere поднят BIND - slave держит . master у него 192,168,0,100 на 100 поднят bind с мастер зоной

Код: Выделить всё

#resolve.conf
domain          mydomain
nameserver    localhost
nameserver    192.168.0.100
nameserver    172.168.1.1
теперь конфиг

Код: Выделить всё

#pf.config

## kaztel (ныне локалка 192.168.0.0/24)
ext_if1="bce0"
ext_gateway1="192.168.0.100"

ext_if0="bce1"
ext_gateway0="172.168.1.100"

dmz_if="em0"
dmz_net="10.10.0.0/24"

## ip-адреса хостов, которые нам понадобятся
web_server="10.10.0.3" # он же mail, www
ftp_server="10.10.0.4
 
## Игнорируем петлевой интерфейс
set skip on lo0

## натим все пакеты на внешнем(exp-if1) интерфейсе, которые помечены
nat on $ext_if1 proto {tcp udp} from $dmz_if:network -> ($ext_if1)
nat on $ext_if0 proto {tcp udp} from $dmz_if:network -> ($ext_if0)

## запрещаем все входящие соединения на внешнем интерфейсе (ext-if1 то есть казтел)
block in on $ext_if1
pass out quick on $ext_if1 keep state

block in on $ext_if0
pass out quick on $ext_if0 keep state

block in on $dmz_if
#pass in on $dmz_if proto udp from any to any port 53 keep state #1
pass in on $dmz_if route-to {$ext_if1 $ext_gateway1} proto {tcp udp} from $web_server to any keep state #2
pass in on $dmz_if route-to {$ext_if0 $ext_gateway0} proto {tcp udp} from $ftp_server to any keep state #3
pass out quick on $dmz_if keep state
хочу что бы у меня web брал данные с 192,168,0,100 dns.(с помощью правила №2), а ftp посылался на 172,168,1,1 (с помощью правила №3)
ну у меня нихера не работает! уважаемые гуру подскажите куда копать? или может синтаксис не правильный или что а то у меня уже првила перед глазами стоят!

Re: PF + dmz + 2 провайдера

Добавлено: 2008-02-25 0:59:25
buzi
хочу что бы у меня web брал данные с 192,168,0,100 dns.(с помощью правила №2), а ftp посылался на 172,168,1,1 (с помощью правила №3)
что это значит? кстати, судя по вашему конфигу, ваша DMZ извне вообще недоступна

Re: PF + dmz + 2 провайдера

Добавлено: 2008-02-25 8:29:54
demondem10
не тут тема такая, что сервера в dmz доступны только по одному внешнему интерфейсу на вход и на выход, а весь трафик от пользователей уходит по другому интерфейсу, менее быстрому . Я разобрался со всей этой лабудой . Не работало потому что не было второго провайдера подключено, а потом все заработало!

Re: PF + dmz + 2 провайдера

Добавлено: 2008-02-27 11:00:28
opencat
demondem10 писал(а):Я разобрался со всей этой лабудой . Не работало потому что не было второго провайдера подключено, а потом все заработало!
Млин, радует твое объяснение. "А потом всё заработало" В смысле ? Воткнули разъем в сетевушку ? :D Конфиг вроде норм и имеет право на существование.

Re: PF + dmz + 2 провайдера

Добавлено: 2008-02-27 11:08:57
demondem10
Да именно так, прова нового завели, адрес прописали, пачкорд воткнули и все завелось!

Re: PF + dmz + 2 провайдера

Добавлено: 2008-02-28 13:39:23
Gering
demondem10 писал(а):Да именно так, прова нового завели, адрес прописали, пачкорд воткнули и все завелось!
Конфиг бы хоть причесал :)

Например

pf.config

## kaztel (ныне локалка 192.168.0.0/24)
ext_if1="bce0"
ext_gateway1="192.168.0.100"

ext_if0="bce1"
ext_gateway0="172.168.1.100"

dmz_if="em0"
dmz_net="10.10.0.0/24"

## ip-адреса хостов, которые нам понадобятся
web_server="10.10.0.3" # он же mail, www
ftp_server="10.10.0.4

## Игнорируем петлевой интерфейс
set skip on lo0

#Собираем фрагменты
scrub in

## натим все пакеты на внешнем(exp-if1) интерфейсе, которые помечены
nat on $ext_if1 from !($dmz_if) -> ($ext_if1:0)
nat on $ext_if0 from !($dmz_if) -> ($ext_if0:0)

## запрещаем все входящие соединения
block in all
block return-rst in proto tcp

#Просто жжом
#pass in on $dmz_if proto udp from any to any port 53 keep state #1
pass in on $dmz_if route-to {$ext_if1 $ext_gateway1} proto {tcp udp} from $web_server to any keep state #2
pass in on $dmz_if route-to {$ext_if0 $ext_gateway0} proto {tcp udp} from $ftp_server to any keep state #3
pass out keep state

Re: PF + dmz + 2 провайдера

Добавлено: 2008-02-28 14:29:14
demondem10
Да можно было бы но это не важно! Так как конфиг просто тестовый! а не для рабботы! там все просто по это му без коментов! НА будушее учту!