The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Ipfw"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Ipfw"
Сообщение от vpeleh Искать по авторуВ закладки on 17-Авг-03, 00:57  (MSK)
Вроде все в нем понятно но есть два темних места
ето динамические правила і эти приставки до интерфейсов in, recv, xmit ...
вроде ничего сложного но вот немогу понять токе правило
from any to 192.168.243.12 "in recv" rl0
что значит "in recv"?
recv - ето понятно принятые а вот "in recv"
from 192.168.1.0/24 to any "out xmit" rl0
тоже не понимаю что такое out xmit подскажите где можно прочитать толково ато я уже и английскии мен читал и руский и не понял
и про динамические правила
Спасибо
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

  • Ipfw, Free, 04:10 , 17-Авг-03, (1)
    • Ipfw, vpeleh, 16:45 , 17-Авг-03, (2)
      • Ipfw, Free, 19:24 , 17-Авг-03, (3)
    • Ipfw, A Clockwork Orange, 20:12 , 22-Авг-03, (4)
      • Ipfw, SergeyKa, 11:42 , 23-Авг-03, (5)
        • Ipfw, SergeyKa, 12:38 , 23-Авг-03, (6)
          • Ipfw, A Clockwork Orange, 09:01 , 25-Авг-03, (7)

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Ipfw"
Сообщение от Free Искать по авторуВ закладки on 17-Авг-03, 04:10  (MSK)
>Вроде все в нем понятно но есть два темних места
>ето динамические правила і эти приставки до интерфейсов in, recv, xmit ...
>
>вроде ничего сложного но вот немогу понять токе правило
>from any to 192.168.243.12 "in recv" rl0
>что значит "in recv"?
>recv - ето понятно принятые а вот "in recv"
>from 192.168.1.0/24 to any "out xmit" rl0
>тоже не понимаю что такое out xmit подскажите где можно прочитать толково
>ато я уже и английскии мен читал и руский и не
>понял
>и про динамические правила
>Спасибо

Насчет динамических правил - не понятно, что спрашиваешь.

Насчет остального:

in и out относятся к направлению движения пакета.

recv, xmit, via - это относится к интерфейсу. То есть интерфейс получил пакет, передал пакет, или via-через (неважно в какую сторону).

Типа примеры:

in recv rl0 - входящий пакет, полученный с интерфейса rl0
out recv rl0 - исходящий пакет, полученный rl0 интерфейсом
out xmit rl0 - исходящий пакет, отправленный rl0 интерфейсом

in xmit rl0 - входящий пакет, отправленный rl0 интерфейсом. Если подумать, то такого быть не может :) То есть это типа бред.

out recv ed0 xmit ed1 - пример из манула - исходящий пакет, полученный через ed0 и отправленный через ed1.

Если будешь писать out via или in via, то автоматом будет подставляться out xmit или in recv.

Надеюсь ничего не напутал :) Если что - люди поправят.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Ipfw"
Сообщение от vpeleh emailИскать по авторуВ закладки on 17-Авг-03, 16:45  (MSK)
>>Вроде все в нем понятно но есть два темних места
>>ето динамические правила і эти приставки до интерфейсов in, recv, xmit ...
>>
>>вроде ничего сложного но вот немогу понять токе правило
>>from any to 192.168.243.12 "in recv" rl0
>>что значит "in recv"?
>>recv - ето понятно принятые а вот "in recv"
>>from 192.168.1.0/24 to any "out xmit" rl0
>>тоже не понимаю что такое out xmit подскажите где можно прочитать толково
>>ато я уже и английскии мен читал и руский и не
>>понял
>>и про динамические правила
>>Спасибо
>
>Насчет динамических правил - не понятно, что спрашиваешь.
>
>Насчет остального:
>
>in и out относятся к направлению движения пакета.
>
>recv, xmit, via - это относится к интерфейсу. То есть интерфейс получил
>пакет, передал пакет, или via-через (неважно в какую сторону).
>
>Типа примеры:
>
>in recv rl0 - входящий пакет, полученный с интерфейса rl0
>out recv rl0 - исходящий пакет, полученный rl0 интерфейсом
>out xmit rl0 - исходящий пакет, отправленный rl0 интерфейсом
>
>in xmit rl0 - входящий пакет, отправленный rl0 интерфейсом. Если подумать, то
>такого быть не может :) То есть это типа бред.
>
>out recv ed0 xmit ed1 - пример из манула - исходящий пакет,
>полученный через ed0 и отправленный через ed1.
>
>Если будешь писать out via или in via, то автоматом будет подставляться
>out xmit или in recv.
>
>Надеюсь ничего не напутал :) Если что - люди поправят.


большое спасибо!!! вроде понял

а вот с динамическими правилами как оно работает


           ipfw add check-state
           ipfw add deny tcp from any to any established
           ipfw add allow tcp from my-net to any setup keep-state

вот ето было в примере, непонятно какое изних динамическое, когда оно всплывет, то что второе все закривае для всех established ето понятно, третие тоже вроде ясно, разрешает моей сети доступ к любому на setup(но причем оно здесь мы же делаем ето для внешних атак)

извини если я что-то не так понял и если можешь обясни пожалуйста
спасибо

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Ipfw"
Сообщение от Free Искать по авторуВ закладки on 17-Авг-03, 19:24  (MSK)
>>>Вроде все в нем понятно но есть два темних места
>>>ето динамические правила і эти приставки до интерфейсов in, recv, xmit ...
>>>
>>>вроде ничего сложного но вот немогу понять токе правило
>>>from any to 192.168.243.12 "in recv" rl0
>>>что значит "in recv"?
>>>recv - ето понятно принятые а вот "in recv"
>>>from 192.168.1.0/24 to any "out xmit" rl0
>>>тоже не понимаю что такое out xmit подскажите где можно прочитать толково
>>>ато я уже и английскии мен читал и руский и не
>>>понял
>>>и про динамические правила
>>>Спасибо
>>
>>Насчет динамических правил - не понятно, что спрашиваешь.
>>
>>Насчет остального:
>>
>>in и out относятся к направлению движения пакета.
>>
>>recv, xmit, via - это относится к интерфейсу. То есть интерфейс получил
>>пакет, передал пакет, или via-через (неважно в какую сторону).
>>
>>Типа примеры:
>>
>>in recv rl0 - входящий пакет, полученный с интерфейса rl0
>>out recv rl0 - исходящий пакет, полученный rl0 интерфейсом
>>out xmit rl0 - исходящий пакет, отправленный rl0 интерфейсом
>>
>>in xmit rl0 - входящий пакет, отправленный rl0 интерфейсом. Если подумать, то
>>такого быть не может :) То есть это типа бред.
>>
>>out recv ed0 xmit ed1 - пример из манула - исходящий пакет,
>>полученный через ed0 и отправленный через ed1.
>>
>>Если будешь писать out via или in via, то автоматом будет подставляться
>>out xmit или in recv.
>>
>>Надеюсь ничего не напутал :) Если что - люди поправят.
>
>
>большое спасибо!!! вроде понял
>
>а вот с динамическими правилами как оно работает
>
>
>           ipfw
>add check-state
>           ipfw
>add deny tcp from any to any established
>           ipfw
>add allow tcp from my-net to any setup keep-state
>
>вот ето было в примере, непонятно какое изних динамическое, когда оно всплывет,
>то что второе все закривае для всех established ето понятно, третие
>тоже вроде ясно, разрешает моей сети доступ к любому на setup(но
>причем оно здесь мы же делаем ето для внешних атак)
>
>извини если я что-то не так понял и если можешь обясни пожалуйста
>
>спасибо

Хм…  ну не знаю даже с чего начать.

Скажу так. Ты не путай динамические правила с другими вещами.

К динамике относятся:
keep-state
check-state

А вот параметры:
established
setup
отбирают пакеты, у которых определенным образом стоят флаги. К динамике отношения не имеют.


Теперь о том, зачем все это используется (наверняка твой вопрос связан с какой-то конкретной задачей). Обычно это используют, чтобы построить файрвол на шлюзе твоей локальной сети (то есть на машине, которая будет являться default gateway для твоей внутренней сети).

В чем сымсл? Смысл в том, что любой входящий пакет должен быть ответом на наш запрос. Если к нам приходит пакет, а мы его не заказывали :), то ну его нафиг в deny. Нефиг к нам ломиться. Вот, собственно в чем смысл. Защита, разумеется, не абсолютная, но действует по принципу: разрешить, что надо и запретить все остальное. Так надежнее. То есть последним правилом у тебя всегда должно идти deny all from any to any.

Итак можем это забацать двумя способами:

Динамика (пример из man ipfw):

ipfw add check-state
если, есть динамическое правило, которое было сгенерировано keep-state, то пакет проходит, если нет, то он долетает далее до deny tcp from any to any


ipfw add allow tcp from my-subnet to any setup keep-state
создаем динамические правила на наши исходящие TCP соединения, чтобы ответ мог вернуться и не попасть в deny


ipfw add deny tcp from any to any
сюда попадают все, для чего нет динамических правил. В общем случае вообще все, что мы ранее не разрешили.


*****
Второй вариант:

add allow tcp from any to any established
пропустить пакеты с выставленными флагами, что это уже установленное воединение


add allow tcp from my-subnet to any setup
пропустить пакеты с высталенными флагами, что это происходит установка соединения


ipfw add deny tcp from any to any
Все остально – на фиг


Получается, что мы пропускаем setup только из нашей сетки. Если к нам кто-то будет долбиться, то на него правила с setup нету и он попадает в deny.


Вообщем вот такие примерчики… В реале, конечно, все сложнее. Многие вещи надо снаружи разрешать setup (например 53, 80, 22 порты...). Поищи готовые конфиги на файрвол и попробуй теперь их сам разобрать…

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Ipfw"
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 22-Авг-03, 20:12  (MSK)
in и out относятся к направлению движения пакета.
recv, xmit, via относятся к интерфейсу. Т.е. интерфейс получил пакет, передал пакет, или via-через (неважно в какую сторону).

Типа примеры:

in recv rl0 - входящий пакет, полученный с интерфейса rl0

НЕ ЯСНО !
входящий пакет (тут просто),
полученный интерфейсом rl0? или полученный С интерфейса r0 (не ясно)

out recv rl0 - исходящий пакет, полученный rl0 интерфейсом
out xmit rl0 - исходящий пакет, отправленный rl0 интерфейсом

  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Ipfw"
Сообщение от SergeyKa Искать по авторуВ закладки on 23-Авг-03, 11:42  (MSK)
небольшая добавочка.
in, out - подразумевается относительно операционной системы на которой установлен ipfw.

Вот пример работы правил на внешнем интерфейсе:
Работаем через nat (ipnat)

out xmit rl0
(ipfw add 90 pass log tcp from any to any out xmit rl0)
Смотрим лог
Aug 23 11:30:50 myd.ru /kernel: ipfw: 90 Accept TCP 195.195.95.15:4244 81.222.132.139:80 out via rl0

ipfw del 90

out recv rl0
(ipfw add 90 pass log tcp from any to any out recv rl0)
Смотрим лог
Aug 23 11:33:30 myd.ru /kernel: ipfw: 90 Accept TCP 81.222.132.139:80 192.168.10.98:3182 out via rl1

ipfw del 90

in  recv rl0
(ipfw add 90 pass log tcp from any to any out recv rl0)
Смотрим лог
Aug 23 11:36:05 myd.ru /kernel: ipfw: 90 Accept TCP 216.136.204.117:80 192.168.10.98:3182 in via rl0

ipfw del 90


Хочу заметить, что в случае использования natd результат может быть другой.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Ipfw"
Сообщение от SergeyKa Искать по авторуВ закладки on 23-Авг-03, 12:38  (MSK)
Прошу прощения, что сразу не сделал ударение на втором пункте

Правило out recv rl0 пропускает пакеты (ответ на наш запрос) с внешнего сервера во внутреннюю сеть после возврата исходных заговолков, перепеисанных НАТом при отправке
Это правило самое интересное и по этому чаще встречается в реальных правилах файрволов.
Мы пропускаем исходящие пакеты (относительно нашего шлюза) - тоесть пакет для нашей локальной сети, полученный rl0 интерфейсом, а значит правило касается всех интерфейсов работающих на выход (относительно нашего шлюза).
Тогда сколько бы нибыло локальных сетей подключено к нашему шлюзу все пакеты адресованные им были бы пропущены с помощью этого правила - rl1, rl2, rl3 ...
Именно исходя из этого чаще всего встречаются правила типа out recv rl0 xmit rl1 - с указание конкретного интерфейса для выхода из системы

  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "Ipfw"
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 25-Авг-03, 09:01  (MSK)
Вот замутил Сергейка.

Дайте точный перевод man ipfw касательно in|out recv|xmit|via.

Возможно это прольет больльше света

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




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

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