Инструменты пользователя

Инструменты сайта


pf_opcii

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

pf_opcii [2010/12/27 09:33] (текущий)
Строка 1: Строка 1:
 +====== PF Опции ======
 +Различные опции для управления поведением PF.
  
 +<​code>​
 +# ee /​usr/​src/​tools/​tools/​tinybsd/​conf/​wireless/​etc/​pf.conf
 +...
 +# Options: tune the behavior of pf, default values are given.
 +# Указаны значения по умолчанию
 +#set timeout { interval 10, frag 30 }
 +#set timeout { tcp.first 120, tcp.opening 30, tcp.established 86400 }
 +#set timeout { tcp.closing 900, tcp.finwait 45, tcp.closed 90 }
 +#set timeout { udp.first 60, udp.single 30, udp.multiple 60 }
 +#set timeout { icmp.first 20, icmp.error 10 }
 +#set timeout { other.first 60, other.single 30, other.multiple 60 }
 +#set timeout { adaptive.start 0, adaptive.end 0 }
 +#set limit { states 10000, frags 5000 }
 +#set loginterface none
 +#set optimization normal
 +#set block-policy drop
 +#set require-order yes
 +#set fingerprints "/​etc/​pf.os"​
 +...
 +</​code>​
 +  * [[http://​www.opennet.ru/​base/​net/​pf_optimization.txt.html|PF:​ Оптимизация правил пакетного фильтра]]
 +<​file>​
 +set limit states 250000 # Менять пришлось т.к. переполнялась таблица NAT и правила с keep state
 +set optimization aggressive # изменяет тайминги,​ которые можно посмотреть pfctl -st.
 +</​file>​
 +После изменения предельные значения можно проверить так
 +<​file>​
 +> pfctl -sm
 +states ​       hard limit   ​250000
 +src-nodes ​    hard limit    10000
 +frags         hard limit     5000
 +tables ​       hard limit     1000
 +table-entries hard limit   ​200000
 +</​file>​
 +====== set loginterface interface ======
 +Задать интерфейс для которого пакетный фильтр собирает статистическую информацию:​ количество прошедших пакетов,​ количество заблокированных пакетов,​ сколько байт вошло, сколько вышло. Статистику можно собирать одновременно только на одном интерфейсе. При этом, счётчики match, bad-offset и т.п., а также счётчики в таблице состояний,​ работают независимо от этой опции. Чтобы отключить сбор статистики следует выставить опцию в none. Значение по умолчанию — none.
 +
 +Просмотреть статистику можно при помощи команды pfctl с опцией -s info.
 +====== set block-policy option ======
 +Установить поведение по умолчанию для правил фильтра,​ когда срабатывает правило block. Возможные варианты:​
 +        * drop — пакет молча отбрасывается;​
 +        * return — для отброшенных пакетов TCP отсылается пакет TCP RST, для прочих ICMP Unreachable. ​
 +В конкретных правилах значение опции может быть переопределено. Умолчание — drop
 +====== set limit option value ======
 +Установить предел для различных опций:
 +        * frags — Максимальное количество записей в пуле отвечающем за нормализацию трафика (scrub). По умолчанию — 100.
 +        * src-nodes — Максимальное количество записей в пуле отвечающем за отслеживание исходящих IP адресов. (Пул генерируется правилами с ключевыми словами sticky-addressи source-track). Умолчание — 10000.
 +        * states — Максимальное количество вхождений в пул отвечающий за состояние таблицы состояний соединений (Которая заводится при помощи правил с ключевой фразой keep state). Умолчание 10000. ​
 +
 +Допустим синтаксис:​ set limit { states 20000, frags 20000, src-nodes 2000 }
 +====== set optimization value ======
 +Установить оптимизацию пакетного фильтра для различного поведения сети:
 +        * normal — подходит ко всем сетям.
 +        * high-latency — подходит для сетей работающих с большими задержками,​ например через спутник.
 +        * aggressive — агрессивно очищать таблицу состояний. Это может существенно уменьшить требования к памяти на загруженном брандмауэре,​ однако связано с риском преждевременного разрыва соединений.
 +        * conservative — крайне консервативный брандмауэр. Предотвращает разрыв соединений,​ однако приводит к большому расходу памяти. ​
 +
 +Умолчание —normal
 +====== set debug option ======
 +Установить уровень отладки для пакетного фильтра:​
 +
 +        * none — не показывать отладочных сообщений;​
 +        * urgent — отладочные сообщения показываются для серьёзных ошибок.
 +        * misc — отладочные сообщения выводятся для различных ошибок (помогает узнать состояние системы нормализации трафика (scrub) и ошибки в работе таблицы состояний);​
 +        * loud — oтладочные сообщения общего плана (позволяет изучать сообщения от системы osfp). ​
 +
 +Умолчание — urgent. Уровень отладки можно также изменять при помощи команды pfctl (опция -x). Например:​ <​file>​
 +> pfctl -x loud
 +debug level set to '​loud'​
 +</​file>​
 +====== set state-policy value ======
 +Поведение пакетного фильтра при использовании таблицы состояний. Это поведение может быть переопределено в конкретных правилах фильтрации:​
 +
 +        * if-bound — Состояние привязывается к конкретному интерфейсу,​ через который прошёл первый пакет. Если ответ пришёл через другой интерфейс,​ он не будет соответствовать данному соединению.
 +        * group-bound — то же, но привязано к группе интерфейсов (в OpenBSD, но не в FreeBSD, интерфейсы можно объединять в группы).
 +        * floating — Записи в таблице состояний не привязаны к интерфейсам. ​
 +
 +Умолчание — floating
загрузка...
pf_opcii.txt · Последние изменения: 2010/12/27 09:33 (внешнее изменение)