Документ взят из кэша поисковой машины. Адрес оригинального документа : http://uneex.lorien.cs.msu.su/LecturesCMC/UnixFirewalls2014/01_CommonTask
Дата изменения: Unknown
Дата индексирования: Sun Apr 10 04:23:57 2016
Кодировка: UTF-8

Поисковые слова: прохождение
LecturesCMC/UnixFirewalls2014/01_CommonTask - UNИX

Общая задача межсетевого экранирования

Цель: избавиться от нежелательного сетевого трафика (в случае МЭ для Unix речь идет о программной защите)

Задачи: работа с сетевым трафиком:

  1. Фильтрация
  2. Ограничение
  3. Перенаправление
  4. Преобразование
  5. Отслеживание

Причины:

Примеры использования МЭ в TCP/IP

(Это далеко не все примеры :) )

  1. Аппаратный уровень ? ?

  2. Интерфейсный уровень ? фильтрация MAC и отслеживание подмены/дублей

  3. Сетевой

    1. Фильтрация по IP, антиспуф
    2. Ограничение пропускной способности по IP (недостатки), приоритизация
    3. Policy routing
    4. NAT ?1 ? 1?
    5. Грубый подсчет сетевой активности
  4. Транспортный

    1. Фильтрация по порту
    2. Ограничение пропускной способности TCP и количества TCP-соединений
    3. ?Проброс портов? без модификации пакета, используется редко (почему?)
    4. NAT ?много ? 1?, ?проброс портов?
    5. Отслеживание активности по портам (например, запредельное количество TCP-соединений)
  5. Прикладной. В основном все задачи должно делать само приложение. Исключения: контент-фильтрация (например, почтовый антивирус, антиспам) и поиск информации для определения ?состояния потока данных? (например, для работы DNS по UDP).

Организация ?МЭ уровня ядра?

  1. Поддержка изменяемой логики работы TCP/IP в ядре
  2. Язык задания этой логики
  3. Утилиты пространства пользователя для оперативной работы с ядерной составляющей
  4. Сложность понятия ?пакет? в стеке TCP/IP ядра (?пакет? какого уровня?)
  5. Сложность фиксации точки принятия решения (различные пути обработки пакетов)

Три-четыре примера языка описания МЭ

Общий принцип: свод правил МЭ состоит из одиночных записей вида

тест пакета ? действие

Заметно влияние Нормальных Алгоритмов Маркова

  1. ?Линейный? (ipfw) воспроизводит работу НАМ: правила в столбик, first wins
    • Достоинства: простота, гибкость
    • Недостатки: неструктурированность, трудно отследить точку принятия решения, goto
  2. ?Граф? (iptables) представляет собой несколько НАМ-машин (?цепочек?), передающих друг другу пакеты, first wins
    • Достоинства: большинство типичных задач требуют только дополнения имеющихся цепочек ? очевидный граф
    • Недостатки: сложные задачи требуют конструирования новых цепочек и логико ?прыжков? из одной в другую ? неочевидный граф
  3. ?Таблица? (pf): правила просматриваются по принципу last wins (т. е применяются все, а потом принимается решение, что делать с пакетом)
    • Достоинства: возможность использования сложных атомарных правил и именованных групп правил (?якорей?), хеш-таблиц, гарантированное время прохождения пакета
    • Недостатки: долгое прохождение пакета через длинные списки правил,

Альтернативный подход (shorewall): компилировать высокоуровневое описание (скажем, структуры сети и абонентских служб) в нечитаемой множество правил.

LecturesCMC/UnixFirewalls2014/01_CommonTask (последним исправлял пользователь FrBrGeorge 2014-03-01 08:17:38)