Тематический план
- Назначение и функции межсетевого экрана
Терминология: межсетевой экран vs. брандмауер vs. firewall. Цели, задачи и инструменты, связанные с межсетевым экранированием. Таблица задач и уровней межсетевого экранирования. Стратегии работы и архитектуры различных межсетевых экранов: одна цепочка/несколько цепочек/граф, first/last wins. Состав межсетевых экранов и их поддержка со стороны ядра.
ipfw
- Архитектура
Стратегия обработки пакетов. Места обработки пакетов межсетевым экраном в сетевом стеке.
- Синтаксис правил
Нумерация правил. Основные правила: allow, drop, reject, fwd, netgraph.
- Divert-сокеты и их использование
Правила divert, tee. Организация NAT.
- Stateful firewall
Механизм работы. Флаги setup, keep-state. Правило checkstate.
- Shaping
Основные понятия и команды: pipe, dummynet, queue. Параметры трубы: delay, bw, plr.
- Теги
- Флаги
in/out, diverted/bridged/..., fragmented, ...
Утилита ipfw
Команды: add, del, show.
iptables
- Описание и назначение
Фильтрация пакетов в GNU/Linux. Место iptables. Уровни сетевого стека, на которых работает iptables. Задачи, решаемые iptables.
- Основные понятия
Фильтры, цели, модули, цепочки, таблицы.
- Архитектура
Порядок обработки пакета. Конфигурирование посредством sysctl.
- Синтаксис
Фильтры: protocol, source, destination, in/out interface, port/icmp-type, source/destination port, TCP flags, MAC. Цели: ACCEPT, DROP, REJECT, LOG/ULOG, TRACE, RETURN, MIRROR, QUEUE/NFQUEUE
- States, conntrack
Понятие состояния. Возможные состояния: NEW, ESTABLISHED, RELATED, INVALID. Цель NOTRACK. Conntrack helpers.
- Пометки
Цели MARK, CONNMARK
- Утилиты
Утилита iptables. Основные ключи: -A, -D, -t, -m, -J, specific. Утилиты iptables-save, iptables-restore.
- NAT
Цели MASQUERADE, SNAT, DNAT, NETMAP, SAME, REDIRECT
l7filter
pf
- Архитектура
Цели, поставленные при разработке pf и вытекающие из этого архитектурные особенности. Стратегия обработки пакетов в pf. Места обработки пакетов межсетевым экраном в сетевом стеке. Основные элементы: таблицы, якоря, макросы, списки.
- Синтаксис
Синтаксис правила. Фильтры: направление, интерфейс, версия IP, протокол, исходящий/целевой адрес, TCP-флаги. Действия allow, block. Флаги log, quick.
- Конфигурирование
pfctl, /etc/pf.conf
- NAT
- Traffic shaping
Планировщик. Виды планировщиков. Преимущества и недостатки различных видов планировщиков.
- Мелочи
Stateful, antispoof, syn porxy, scrub, passive OS fingerprinting, UPRF, Common address redundancy protocol, authpf, ...
- Firegems
- Shorewall
Идея, архитектура. Алгоритм использования.
- Конфигураторы межсетевых экранов
- DMZ