The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"IPFW NAT - порядок прохождения правил"
Отправлено neekonoff, 17-Апр-17 15:50 
Друзья, прошу помощи.
FreeBSD 10.3.
Есть вот такой набор правил. По структуре - пример правил из хэндбука.
---------------------------------------------------------------------------------
#!/bin/sh
ipfw -q -f flush

cmd="ipfw -q add"

$cmd 010 allow all from any to any via lo0
$cmd 020 allow all from any to any via fxp0

ipfw -q nat 1 config ip 1.2.3.4 same_ports reset deny_in \
                        redirect_port tcp 10.1.10.12:443 443 \
                        redirect_port tcp 10.1.10.12:25 25

$cmd 100 nat 1 ip from any to any in via em0
                        
$cmd 200 check-state

$cmd 300 skipto 800 tcp from 10.1.10.0/24 to any out via em0 setup keep-state

$cmd 400 deny all from any to any frag in via em0
$cmd 500 deny tcp from any to any established in via em0

$cmd 600 tcp from any to 10.1.10.12 25,443 in via em0 setup keep-state

$cmd 700 deny all from any to any via em0

$cmd 800 nat 1 ip from any to any out via em0

$cmd 900 allow all from any to any
$cmd 999 deny all from any to any

----------------------------------------------------------
sysctl net.inet.ip.fw.one_pass=0
----------------------------------------------------------------------------------
Подскажите, почему нет связи с 10.1.10.12 извне?

Ведь входящий трафик на внешний IP 1.2.3.4 на порт, например, 443:
На проходе IN:
1. Приходит на правило 100. Меняется адрес назначения (так как редирект_порт)
2. Далее выходит изната и, т.к. one_pass=0, доходит до правила 600 (в динамической таблице создается запись для пар адресов внутреннего и внешнего адреса), выходит из прохода IN и попадает в проход OUT.
На проходе OUT:
3. Доходит до правила 020 и отправляется на внутренний хост 10.1.10.12:443.

Ответный трафик от хоста 10.1.10.12
На проходе IN:
4. Доходит до правила 020, входит из прохода IN и попадает в проход OUT.
На проходе OUT:
5. Доходит до правила 200 и отправляется на внешний адрес (т.к. запись о соединении уже есть в динамической таблице).

Подскажите, где ошибка?

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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