Терминология: межсетевой экран vs. брандмауер vs. firewall. Цели, задачи и инструменты, связанные с межсетевым экранированием. Таблица задач и уровней межсетевого экранирования. Стратегии работы и архитектуры различных межсетевых экранов: одна цепочка/несколько цепочек/граф, first/last wins. Состав межсетевых экранов и их поддержка со стороны ядра.
ipfw
Стратегия обработки пакетов. Места обработки пакетов межсетевым экраном в сетевом стеке.
Нумерация правил. Основные правила: allow, drop, reject, fwd, netgraph.
Правила divert, tee. Организация NAT.
Механизм работы. Флаги setup, keep-state. Правило checkstate.
Основные понятия и команды: 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
Понятие состояния. Возможные состояния: NEW, ESTABLISHED, RELATED, INVALID. Цель NOTRACK. Conntrack helpers.
Цели MARK, CONNMARK
Утилита iptables. Основные ключи: -A, -D, -t, -m, -J, specific. Утилиты iptables-save, iptables-restore.
Цели MASQUERADE, SNAT, DNAT, NETMAP, SAME, REDIRECT
l7filter
pf
Цели, поставленные при разработке pf и вытекающие из этого архитектурные особенности. Стратегия обработки пакетов в pf. Места обработки пакетов межсетевым экраном в сетевом стеке. Основные элементы: таблицы, якоря, макросы, списки.
Синтаксис правила. Фильтры: направление, интерфейс, версия IP, протокол, исходящий/целевой адрес, TCP-флаги. Действия allow, block. Флаги log, quick.
pfctl, /etc/pf.conf
Планировщик. Виды планировщиков. Преимущества и недостатки различных видов планировщиков.
Stateful, antispoof, syn porxy, scrub, passive OS fingerprinting, UPRF, Common address redundancy protocol, authpf, ...
Идея, архитектура. Алгоритм использования.