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

Исходное сообщение
"Transparent bridge, не работает  правило in в ipwf"

Отправлено rinat , 15-Фев-10 23:02 
Здравствуйте.
Система FreeBSD 7.0-release
Два интерфейса, работает как бридж, пакеты фильтруются как ipfw.
msk0 - внешний , em0 - внутренний интерфейс.
Работает отлично, простоял уже год. И тут недавно обнаружил интересную проблему:

хочу заблокировать доступ из интернета для адреса ххх.ххх.ххх.ххх к внутренней сети

правила фильтрации ipfw:
$cmd 00002 deny log tcp from ххх.ххх.ххх.ххх to any 80 in via msk0
или
$cmd 00002 deny log tcp from ххх.ххх.ххх.ххх to any 80 in recv msk0

НЕ РАБОТАЮТ.

а правила :
$cmd 00002 deny log ip from any 80 to ххх.ххх.ххх.ххх out via msk0

или

$cmd 00002 deny log tcp from ххх.ххх.ххх.ххх to any 80 bridged

РАБОТАЮТ.

В чем дело? Перерыл по-моему весь интернет, результат 0.


Содержание

Сообщения в этом обсуждении
"Transparent bridge, не работает  правило in в ipwf"
Отправлено DeadLoco , 16-Фев-10 02:01 
>правила фильтрации ipfw:
>$cmd 00002 deny log tcp from ххх.ххх.ххх.ххх to any 80 in via msk0
>или
>$cmd 00002 deny log tcp from ххх.ххх.ххх.ххх to any 80 in recv msk0
>НЕ РАБОТАЮТ.

А зачем им работать? Если msk0 - исходящий интерфейс для пакета, то он ловится на OUT, а не на IN. И с этого интерфейса он будет не RECV, а XMIT

Работать будет любое из нижеозначеного:
$cmd 00002 deny log tcp from ххх.ххх.ххх.ххх to any 80 out via msk0
$cmd 00002 deny log tcp from ххх.ххх.ххх.ххх to any 80 out xmit msk0


"Transparent bridge, не работает  правило in в ipwf"
Отправлено rinat , 16-Фев-10 09:33 
>[оверквотинг удален]
>
>А зачем им работать? Если msk0 - исходящий интерфейс для пакета, то
>он ловится на OUT, а не на IN. И с этого
>интерфейса он будет не RECV, а XMIT
>
>Работать будет любое из нижеозначеного:
>$cmd 00002 deny log tcp from ххх.ххх.ххх.ххх to any 80 out via
>msk0
>$cmd 00002 deny log tcp from ххх.ххх.ххх.ххх to any 80 out xmit
>msk0

Спасибо за ответ.
Тут немного не так, адрес xxx.xxx.xxx.xxx это адрес из внешней сети, я пакеты от этого адреса хочу заблокировать к нашему внутреннему серваку по порту 80. Эти пакеты попадают под правило dridged но не попадают по правило in проходя через интерфейс msk0 внутрь сети.
Почему не срабатывает in не понимаю.......


"Transparent bridge, не работает  правило in в ipwf"
Отправлено DeadLoco , 16-Фев-10 13:44 
>Почему не срабатывает in не понимаю.......

man ipfw

net.link.bridge.ipfw: 0
  Controls whether bridged packets are passed to ipfw. Default is no.


"Transparent bridge, не работает  правило in в ipwf"
Отправлено rinat , 16-Фев-10 20:31 
>>Почему не срабатывает in не понимаю.......
>
>man ipfw
>
>net.link.bridge.ipfw: 0
>  Controls whether bridged packets are passed to ipfw. Default is
>no.

man ipfw - это понятно, настройка соответсвует статье http://www.freebsd.org/doc/en/articles/filtering-bridges/art.... Бридж ФИЛЬТРУЕТ, но только работают правила out и bridged.
В том и проблема , что в правило in пакеты не попадают.