Нещодавно дізнався про fallback правила для файервола PF. Але, це більше залежить від конкретної ОС. Серед тих ОС які підтримують PF і з якими я маю справу лише FreeBSD і Solaris мають такий функціонал.
Що ж таке fallback rules? Це альтернативний набір правил, який буде застосований, якщо основний конфіг буде мати помилку і pf не зможе його застосувати.
FreeBSD
Тут є декілька параметрів, які описуються в /etc/rc.conf:
pf_fallback_rules_enable – власне, чи використовувати fallback
pf_fallback_rules_file – шлях до файлу з правилами (за замовчуванням це /etc/pf-fallback.conf)
pf_fallback_rules – або можна просто писати правила в /etc/rc.conf
Приклад:
pf_fallback_rules="\
block drop log all\
pass in quick on em0"
Примітка.
Якщо використовується pf_fallback_rules, то за замовчуванням є правило “block drop log all“
Solaris
В Solaris, нажаль, не так гнучко, і fallback правила описуються тільки в файлі /etc/firewall/maintenance.conf.