The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"freebsd, polling, nat, pf"
Версия для распечатки Пред. тема | След. тема
Форум Маршрутизаторы CISCO и др. оборудование.
Исходное сообщение [ Отслеживать ]

. "freebsd, polling, nat, pf" +/
Сообщение от Confirm (ok), 13-Апр-11, 16:48 
Помогите пожалуйста разобраться, заранее извиняюсь, что чуть не в тему.Не получается при включенном pf выходить в инет сервера(шлюз,на котором pf), еще на этом компе запущен апач, так вот опять же при включенном фаерволе не удается к нему подключиться (как будто не запущен). Дело в правилах, подскажите пожалуйста как мне их подправить. Необходимо чтобы апач был доступен на обоих интерфейсах - внешнем и внутреннем. Стоит добавить, что в данный момент пускает по фтп (21 порт) и ссш (22 порт), т.е. видимо эти правила корректно заданы.
Привожу свой pf.conf

#------------------------------
# Макросы
#------------------------------

int_if="vr0"
ext_if="xl0"
int_ip="192.168.130.139"
ext_ip="10.0.39.36"
lannet = "192.168.130.0/24"
private_nets= "{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8, 169.254.0.0/16, 192.0.2.0/24, 0.0.0.0/8, 240.0.0.0/4
bsd = "192.168.130.139/24"
# Порты
client_ports = "{ 21, 22, 25, 110, 123, 80, 443, 3128, 3129, 3389,8080, >=49151 }"
admin_ports = "{ 5190, 33330:33340 }"
pbx_udp = "{ 2727, 4520, 4569, 5036, 5060, 10000:20000 }"
pbx_tcp = "{ 5060 }"
#------------------------------
# Нормализация
#------------------------------

# Определяем политику при блокировке пакетов
set block-policy return
# Поведение пакетного фильтра при использовании таблицы состояний
set state-policy floating
# Логируемый интерфейс
set loginterface $ext_if
# Максимальное количество записей в пуле отвечающем за нормализацию трафика (scrub)
# Максимальное количество вхождений в пул отвечающий за состояние таблицы состояний соединений (keep state)
set limit { frags 100000, states 100000 }
# Устанавливаем тип оптимизации
set optimization normal
# Игнорируем фильтрацию на кольцевом интерфейсе
set skip on lo0
# Нормализация всего входящего трафика на всех интерфейсах
scrub in all

#------------------------------
# NAT & RDR
#------------------------------

# NAT для локалки
nat on $ext_if inet from $lannet to any -> $ext_ip
# Отправляем локальных интернетчиков на squid.
rdr on $int_if proto tcp from $lannet to any port www -> 127.0.0.1 port 3129
# Пробрасываем порты на web сервер снаружи
rdr on $ext_if proto tcp from any to $ext_ip port www -> 127.0.0.1 port 80
# Пробрасываем порты на web сервер изнутри
rdr on $int_if proto tcp from $lannet to $int_ip port www -> 127.0.0.1 port 80
# Пробрасываем SSH
rdr on $ext_if proto tcp from any to $ext_ip port 33330 -> 127.0.0.1 port 22
# Пробрасываем FTP
rdr on $ext_if proto tcp from any to $ext_ip port 21 -> 127.0.0.1 port 21

#------------------------------
# Правила фильтрации
#------------------------------

# Защита от спуфинга
antispoof quick for { lo0, $int_if, $ext_if }
# Блокируем всё
block log all
# Блокируем тех, кто лезет на внешний интерфейс с частными адресами
block drop in quick on $ext_if from $private_nets to any
# Разрешаем icmp
pass inet proto icmp icmp-type echoreq
# Разрешаем DNS для локалки
pass in on $int_if proto udp from $lannet to $bsd port domain
# Тестовый полный выход для отладки
pass in on $int_if from $lannet to any
# Выпускаем клиентске сервисы
pass in on $int_if proto tcp from $lannet to any port $client_ports
# Разрешаем нашему шлюзу полный выход с обоих интерфейсов
pass out on $ext_if proto tcp from any to any
pass out on $ext_if proto udp from any to any keep state
pass out on $int_if proto tcp from any to any
pass out on $int_if proto udp from any to any keep state

#------------------------------
# Icoming #
#------------------------------

# Разрешаем входящий ssh
pass in log on $ext_if proto tcp from any to $ext_ip port 2200 flags S/SA synproxy state
# Разрешаем входящий www
pass in on $ext_if proto tcp from any to $ext_ip port 80 flags S/SA synproxy state
pass in on $int_if proto tcp from any to $int_ip port 80 flags S/SA synproxy state
# Разрешаем входящий https
pass in on $ext_if proto tcp from any to $ext_ip port https flags S/SA synproxy state
# Разрешаем входящий ftp
pass in on $ext_if proto tcp from any to $ext_ip port 21 flags S/SA synproxy state

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
freebsd, polling, nat, pf, linspb, 13-Апр-09, 17:25  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру