11 Фильтрация сетевого потока
11.1 Введение
Средства фильтрации сетевого потока предоставляют возможности фильтрации входящих и исходящих сетевых потоков на основе установленного набора правил с учетом атрибутов безопасности и используемых сетевых протоколов, а также управления правилами фильтрации сетевых потоков; регистрации и учета выполнения проверок при фильтрации сетевых потоков.
11.2 Настройка файрвола (брандмауэра)
Утилита firewall-cmd
позволяет настраивать работу файрвола (брандмауэра), осуществляющего
фильтрацию сетевых потоков при помощи определения так называемых зон, иными словами,
наборов правил, которые управляют трафиком на основе уровня доверия к той или иной сети.
Существуют следующие зоны:
drop
— самый низкий уровень доверия к сети. Весь входящий трафик сбрасывается без ответа. Поддерживаются только исходящие соединения;block
— эта зона похожа на предыдущую, но при этом входящие запросы сбрасываются с сообщениемicmp-host-prohibited
илиicmp6-adm-prohibited
;public
— эта зона представляет публичную сеть, которой нельзя доверять, однако поддерживает входящие соединения в индивидуальном порядке;external
— зона внешних сетей. Поддерживает маскировку NAT, благодаря чему внутренняя сеть остается закрытой, но с возможностью получения доступа;internal
— обратная сторона зоныexternal
. Компьютерам в этой зоне можно доверять.
Доступны дополнительные сервисы:
dmz
— используется для компьютеров, расположенных в DMZ (зонах изолированных компьютеров, которые не будут иметь доступа к остальной части сети). Поддерживает только некоторые входящие соединения;work
— зона рабочей сети. Большинству машин в сети можно доверять, доступны дополнительные сервисы;home
— зона домашней сети. Окружению можно доверять, но поддерживаются только определённые пользователем входящие соединения;trusted
— всем машинам в сети можно доверять.
Режимы работы утилиты и выполняемые функции задаются набором опций, перечисленных в таблице:
Опция |
Значение |
---|---|
|
Вывести состояние файрвола. |
|
Перезагрузить правила из постоянной конфигурации. |
|
Жёсткая перезагрузка правил с разрывом всех соединений. |
|
Перенести настройки |
|
Использовать постоянную конфигурацию. |
|
Отобразить зону, используемую по умолчанию. |
|
Установить зону по умолчанию. |
|
Отобразить активные зоны. |
|
Отобразить все доступные зоны. |
|
Вывести предопределенные сервисы. |
|
Вывести конфигурацию всех зон. |
|
Создать новую зону. |
|
Удалить зону. |
|
Вывести всё, что добавлено, из выбранной зоны. |
|
Вывести все сервисы, добавленные к зоне. |
|
Добавить сервис к зоне. |
|
Удалить сервис из зон. |
|
Отобразить порты, добавленные к зоне. |
|
Добавить порт к зоне. |
|
Удалить порт из зоны. |
|
Показать, добавлен ли порт к зоне. |
|
Вывести протоколы, добавленные к зоне. |
|
Добавить протокол к зоне. |
|
Удалить протокол из зоны. |
|
Вывести порты источника, добавленные к зоне. |
|
Добавить порт-источник к зоне. |
|
Удалить порт-источник из зоны. |
|
Вывести список блокировок icmp. |
|
Добавить блокировку icmp. |
|
Удалить блокировку icmp. |
|
Добавить порт для перенаправления в NAT. |
|
Удалить порт для перенаправления в NAT. |
|
Включить NAT. |
|
Удалить NAT. |
Пример: настройка правила блокировки адреса получателя может выглядеть следующим образом:
[root@msvsphere ~]# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -d 192.168.10.20 -j DROP
success
Пример: настройка правила отбрасывания всех входящих соединений по протоколу IPv4 может выглядеть следующим образом:
[root@msvsphere ~]# firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -j DROP
success
Пример: настройка правила отбрасывания всех исходящих пакетов UDP может выглядеть следующим образом:
[root@msvsphere ~]# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -p upd -j DROP
success
11.3 Конфигурационный файл /etc/firewalld/firewalld.conf
Конфигурационный файл /etc/firewalld/firewalld.conf
содержит основные параметры
конфигурации для файрвола firewalld
.
DefaultZone
— устанавливает зону по умолчанию для соединений или интерфейсов;MinimalMark
— с этой опцией блок меток может быть зарезервирован для частного использования. Используются только отметки над этим значением. Значение по умолчанию равно100
;CleanupOnExit
— еслиfirewalld
останавливается, он очищает все правила. Если для этого параметра установлено значениеno
илиfalse
, текущие правила останутся нетронутыми. Значением по умолчанию являетсяyes
илиtrue
;Lockdown
— если эта опция включена, измененияfirewalld
с интерфейсом D-Bus будут ограничены приложениями, которые перечислены в белом списке блокировки. Значением по умолчанию являетсяno
илиfalse
;IPv6_rpfilter
— если эта опция включена, выполняется проверка фильтра обратного пути для пакета для IPv6. Если ответ на пакет будет отправлен через тот же интерфейс, на который поступил пакет, пакет совпадет и будет принят. В противном случае он будет отброшен. Для IPv4rp_filter
управляется с помощьюsysctl
;IndividualCalls
— если этот параметр отключен, используются комбинированные вызовы restore, а не отдельные вызовы, чтобы применить изменения к файрволу. Использование отдельных вызовов увеличивает время, необходимое для применения изменений;LogDenied
— добавление правил ведения журнала непосредственно перед отклонением и удалением правил в цепочкахINPUT
,FORWARD
иOUTPUT
для правил по умолчанию, а также окончательных правил отклонения и отбрасывания в зонах для настроенного типа пакета канального уровня. По умолчанию установленоoff
— отключение ведения журнала.AutomaticHelpers
— для безопасного использования протокола IPv4iptables
и помощников по отслеживанию соединений этот параметр рекомендуется отключить. Возможные значения:yes
,no
,system
. По умолчанию установленоsystem
;FirewallBackend
— выбирает реализацию брандмауэра. Возможные значения:nftables
(по умолчанию) илиiptables
. Это относится ко всем примитивамfirewalld
. Единственным исключением являются прямые и сквозные правила, которые всегда используют традиционныеiptables
,ip6tables
иebtables
.