Межсетевой экран
Одной из основных функций ARMA Стена является фильтрация трафика с помощью встроенного межсетевого экрана (МЭ).
Для просмотра конфигурации МЭ необходимо в режиме эксплуатации ввести команду «show firewall».
Примечание
По умолчанию в системе ARMA Стена разрешён весь входящий и исходящий трафик. Транзитный трафик по умолчанию блокируется.
Для изменения политики обработки трафика по умолчанию (установка действия drop или accept ) необходимо выполнить в конфигурационном режиме команду: set firewall <ipv4 | ipv6 | bridge> <forward filter | input filter |output filter> default-action accept.
Примечание
При конфигурации МЭ необходимо обеспечить доступность следующих сетевых портов, которые необходимы для корректного функционирования системных сервисов и служб (см. Таблица «Служебные порты системы ARMA Стена»):
Порт |
Протокол |
Описание |
---|---|---|
22 |
TCP |
Порт для подключения к системе по протоколу SSH |
123 |
TCP |
Служба NTP |
443 |
TCP |
Сервер лицензий - license.iwarma.ru; сервер обновлений правил СОВ - update.iwarma.ru |
3128 |
TCP |
Порт прокси-сервера для обработки HTTP-запросов |
3129 |
TCP |
Порт прокси-сервера для обработки HTTPS-запросов |
5000 |
TCP |
Порт взаимодействия системы ARMA Стена с ARMA МС |
8082 |
TCP |
Порт для синхронизации конфигураций |
Рекомендуется установить строгую политику фильтрации трафика путём явного запрета всего трафика на уровне межсетевого экрана. Доступ должен предоставляться исключительно на основании принципа минимальных привилегий, с последующим созданием правил, разрешающих только необходимые соединения.
Примечание
В случае применения политик, блокирующих весь входящий или исходящий сетевой трафик в системе ARMA Стена, необходимо создать разрешающее правило для сетевого интерфейса localhost (127.0.0.1) для обеспечения взаимодействия между внутренними компонентами системы.
Пример разрешающих правил для взаимодействия системы ARMA Стена с ARMA МС при блокировки всего входящего IPv4-трафика:
# Открыть порт 5000 для взаимодействия системы ARMA Стена с ARMA МС: set ipv4 input filter rule 10 action 'accept' set ipv4 input filter rule 10 destination port '5000' set ipv4 input filter rule 10 protocol 'tcp' # Разрешающее правило для взаимодействия между внутренними сервисами ARMA Стена: set ipv4 input filter rule 30 action 'accept' set ipv4 input filter rule 30 destination address '127.0.0.1'
Пример разрешающих правил для взаимодействия системы ARMA Стена с ARMA МС при блокировки всего исходящего IPv4-трафика:
# Открыть порт 5000 для взаимодействия системы ARMA Стена с ARMA МС: set ipv4 output filter rule 10 action 'accept' set ipv4 output filter rule 10 source port '5000' set ipv4 output filter rule 10 protocol 'tcp' # Открыть порт, указанный при добавлении источника ARMA Стена (NGFW) в ARMA МС, для отправки событий в ARMA МС: set ipv4 output filter rule 20 action 'accept' set ipv4 output filter rule 20 source port 'номер_порта_в_ARMA_МС' set ipv4 output filter rule 20 protocol 'tcp' # Разрешающее правило для взаимодействия между внутренними сервисами ARMA Стена: set ipv4 output filter rule 30 action 'accept' set ipv4 output filter rule 30 source address '127.0.0.1'
В МЭ реализованы две политики фильтрации сетевого трафика:
Стандартная политика на основе системных наборов правил.
Системные наборы правил представляют собой предопределённые пакеты правил, входящие в состав МЭ. В зависимости от направления и назначения сетевого трафика, применяются следующие системные наборы правил:
«Input» - набор правил для фильтрации входящего IPv4/IPv6-трафика, адресованного самой системе ARMA Стена.
«Output» - набор правил для фильтрации исходящего IPv4/IPv6-трафика, инициированного самой системой ARMA Стена, например, ответы на внешние запросы (SSH, ICMP и др.).
«Forward» - набор правил для фильтрации транзитного IPv4/IPv6-трафика, проходящего через устройство ARMA Стена.
Политика на основе зон сети.
В рамках архитектуры, основанной на зонах безопасности, сетевые интерфейсы объединяются в логические группы — зоны, в соответствии с их функциональным или сегментационным назначением. Правила фильтрации трафика между зонами определяются кастомными наборами правил, назначенными для каждой пары взаимодействующих зон. Такой подход обеспечивает гибкое и детализированное управление доступом, позволяя задавать различные уровни разрешений и политик безопасности для каждой конкретной зоны и межзонового взаимодействия.
Примечание
Стандартная политика фильтрации трафика имеет приоритет над политикой на основе зон сети и применяется по умолчанию.
По умолчанию сетевой трафик сначала обрабатывается на уровне системных наборов правил. Для использования исключительно политики на основе зон необходимо разрешить весь трафик на уровне системных наборов правил. Это осуществляется путём установки параметра «Действие по умолчанию» в значение «accept» и удаления (или отключения) всех правил в каждом из системных наборов Input, Output и Forward.
Глобальные настройки
Для глобальной настройки обработки пакетов в рамках соединения необходимо ввести следующую команду:
set firewall global-options state-policy <category> action <act>где:
<category> – категория соединения, к которому относятся сетевые пакеты;
<act> – действие.
Поддерживается применение действий над пакетами следующих категорий соединений (<category>):
«established» – установленного соединения;
«invalid» – недопустимого соединения;
«related» – связанного соединения.
Правилами МЭ предусмотрены следующие действия над сетевыми пакетами (<act>):
«accept» – разрешить;
«drop» – блокировать;
«reject» – отклонить.
По умолчанию для пакетов каждой категории соединений используется действие «accept».
Для просмотра событий, связанных с глобальной настройкой обработки пакетов, необходимо ввести следующую команду в эксплуатационном режиме:
admin@ngfwos:~$ show logging kernel |match STATE-POLICY
Поддерживается включение/отключение следующих опций:
Отправление ARMA Стена ответов на локальные ICMP-запросы:
set firewall global-options all-ping [enable | disable]Включено по умолчанию.
Отправление ARMA Стена ответов на широковещательные ICMP-запросы:
set firewall global-options broadcast-ping [enable | disable]Отключено по умолчанию.
Обработка IPv4-пакетов, содержащих информацию об исходном маршруте:
set firewall global-options ip-src-route [enable | disable]Отключено по умолчанию.
Обработка IPv6-пакетов, содержащих информацию об исходном маршруте:
set firewall global-options ipv6-src-route [enable | disable]Отключено по умолчанию.
Обработка входящих перенаправляющих сообщений ICMPv4:
set firewall global-options receive-redirects [enable | disable]Отключено по умолчанию.
Обработка входящих перенаправляющих сообщений ICMPv6:
set firewall global-options ipv6-receive-redirects [enable | disable]Включено по умолчанию.
Использование перенаправляющих сообщений ICMPv4:
set firewall global-options send-redirects [enable | disable]Включено по умолчанию.
Логирование марсианских IPv4-пакетов:
set firewall global-options log-martians [enable | disable]Включено по умолчанию.
Проверка источников по обратному пути:
set firewall global-options source-validation [strict | loose | disable]где:
«strict» – строгая;
«loose» – мягкая.
Отключено по умолчанию.
Использование IPv4 TCP SYN cookies:
set firewall global-options syn-cookies [enable | disable]Включено по умолчанию.
Защита от угрозы прерывания по времени в TCP:
set firewall global-options twa-hazards-protection [enable | disable]Отключено по умолчанию.
Группы
Группы – удобный инструмент объединения множества сетей, хостов и портов с целью дальнейшего использования в правилах МЭ и NAT.
Создание группы
Для создания группы необходимо ввести следующую команду:
set firewall group <typealias> <name>где:
<typealias> – тип группы;
<name> – имя группы. Должно быть уникальным в рамках своего типа, не превышать «31» символа, начинаться только с латинской буквы или цифры, не может начинаться с символов «-» или «!», и не должно содержать символы «|», «;», «:», «&», «$», «<», «>».
Поддерживается создание групп следующих типов (<typealias>):
«address-group» – «IPv4-адреса»;
«domain-group» – «Домены»;
«dynamic-group» – «Динамические адреса»;
«interface-group» – «Интерфейсы»;
«ipv6-address-group» – «IPv6-адреса»;
«ipv6-network-group» – «IPv6-сети»;
«mac-group» – «Mac-адреса»;
«network-group» – «IPv4-сети»;
«port-group» – «Порты».
Для добавления описания группы необходимо ввести следующую команду:
set firewall group <typealias> <name> description <text>где <text> – описание группы.
Для добавления группы в другую группу необходимо ввести следующую команду:
set firewall group <typealias> <name1> include <name2>где <name2> – имя группы, которую требуется добавить в группу <name1>.
Группа IPv4-адресов
Для создания группы типа «IPv4-адреса» необходимо ввести следующую команду:
set firewall group address-group <name> address <x.x.x.x>где <x.x.x.x> – IPv4-адрес. Возможно указание диапазона адресов, разделённых знаком «-».
Группа IP6-адресов
Для создания группы типа «IPv6-адреса» необходимо ввести следующую команду:
set firewall group ipv6-address-group <name> address <h:h:h:h:h:h:h:h>где <h:h:h:h:h:h:h:h> – IPv6-адрес. Возможно указание диапазона адресов, разделённых знаком «-».
Группа IPv4-сетей
Для создания группы типа «IPv4-сети» необходимо ввести следующую команду:
set firewall group network-group <name> network <x.x.x.x/x>где <x.x.x.x/x> – IPv4-адрес сети.
Группа IPv6-сетей
Для создания группы типа «IPv6-сети» необходимо ввести следующую команду:
set firewall group ipv6-network-group <name> network <h:h:h:h:h:h:h:h/x>где <h:h:h:h:h:h:h:h/x> – IPv6-адрес сети.
Группа портов
Для создания группы типа «Порты» необходимо ввести следующую команду:
set firewall group port-group <name> port <num>где <num> – номер порта или диапазон портов, разделённых знаком «-». Возможно указание значения в диапазоне от «1» до «65535».
Поддерживается указание имени, определённого в «/etc/services», например, «set firewall group port-group <name> port http».
Группа интерфейсов
Для создания группы типа «Интерфейсы» необходимо ввести следующую команду:
set firewall group interface-group <name> interface <intName>где <intName> – имя интерфейса.
Поддерживается указание имени интерфейса с использованием знака «!» для инверсии или подстановочного символа «*», например:
«!eth0» – интерфейсы кроме «eth0»;
«eth2*» – интерфейсы, с именами начинающимися на «eth2».
Группа доменов
Для создания группы типа «Домены» необходимо ввести следующую команду:
set firewall group domain-group <name> address <domain>где <domain> – доменное имя.
Группа MAC-адресов
Для создания группы типа «MAC-адреса» необходимо ввести следующую команду:
set firewall group mac-group <name> mac-address <h:h:h:h:h:h>где <h:h:h:h:h:h> – MAC-адрес.
Динамическая группа
Динамические группы отличаются от всех ранее определённых групп тем, что они не только могут выступать в качестве источника или назначения в правилах МЭ, но и их состав не определяется статически посредством конфигурации системы. Вместо этого члены этих групп добавляются динамически с использованием правил МЭ.
Динамические группы, как и любые другие группы брандмауэра, могут использоваться в правилах фильтрации в качестве условий сопоставления, позволяя создавать гибкие правила на основе динамически обновляемых списков IP-адресов.
Поддержка динамических групп реализована для IPv4 и IPv6. Команды для создания групп:
set firewall group dynamic-group address-group <name> # Для IPv4 set firewall group dynamic-group ipv6-address-group <name> # Для IPv6
Для добавления описания группы необходимо ввести следующую команду:
set firewall group dynamic-group address-group <name> description <text> # Для IPv4 set firewall group dynamic-group ipv6-address-group <name> description <text> # Для IPv6где <text> – текстовое описание динамической группы.
Добавление элементов в динамические группы
Элементы добавляются в динамические группы через правила брандмауэра. Для добавления IP-адресов источника или назначения используются следующие команды:
Добавление адреса назначения:
# Правило в системных наборах правил: set firewall ipv4 [forward | input | output] filter rule <1-999999> add-address-to-group destination-address address-group <name> set firewall ipv6 [forward | input | output] filter rule <1-999999> add-address-to-group destination-address address-group <name> # Правило в кастомном наборе правил: set firewall ipv4 name <name> rule <1-999999> add-address-to-group destination-address address-group <name> set firewall ipv6 name <name> rule <1-999999> add-address-to-group destination-address address-group <name>
Добавление адреса источника:
# Правило в системных наборах правил: set firewall ipv4 [forward | input | output] filter rule <1-999999> add-address-to-group source-address address-group <name> set firewall ipv6 [forward | input | output] filter rule <1-999999> add-address-to-group source-address address-group <name> # Правило в кастомном наборе правил: set firewall ipv4 name <name> rule <1-999999> add-address-to-group source-address address-group <name> set firewall ipv6 name <name> rule <1-999999> add-address-to-group source-address address-group <nameДля каждого правила возможно задать определённый тайм-аут. Если адрес источника или назначения соответствует правилу, он будет добавлен в группу и останется в ней до истечения заданного времени. Если тайм-аут не указан, элемент будет находиться в группе до следующей перезагрузки системы ARMA Стена или до внесения изменений в конфигурацию МЭ, которые приведут к обновлению статуса элемента.
Для установки таймаута необходимо ввести следующие команды:
# Правило в системных наборах правил: set firewall ipv4 [forward | input | output] filter rule <1-999999> add-address-to-group [destination-address | source-address] timeout <timeout> set firewall ipv6 [forward | input | output] filter rule <1-999999> add-address-to-group [destination-address | source-address] timeout <timeout> # Правило в кастомном наборе правил: set firewall ipv4 name <name> rule <1-999999> add-address-to-group [destination-address | source-address] timeout <timeout> set firewall ipv6 name <name> rule <1-999999> add-address-to-group [destination-address | source-address] timeout <timeout>где <timeout> - значение таймаута. Тайм-аут может быть определён с помощью секунд, минут, часов или дней:
<number>s - значение таймаута в секундах;
<number>m - значение таймаута в минутах;
<number>h - значение таймаута в часах;
<number>d - значение таймаута в днях.
Просмотр групп
Для вывода информации о настроенных группах МЭ необходимо ввести следующую команду в эксплуатационном режиме:
admin@ngfwos:~$ show firewall group Firewall Groups Name Type References Members Timeout Expires ------------ ---------------------- ---------------------- ---------------- --------- --------- SERVERS address_group nat-destination-101 198.51.100.101 198.51.100.102 ALLOWED address_group(dynamic) ipv4-input-filter-30 192.168.77.39 7200 7174 PN_01 address_group(dynamic) ipv4-input-filter-10 192.168.0.245 120 112 192.168.77.39 120 85 PN_02 address_group(dynamic) ipv4-input-filter-20 192.168.77.39 180 151 LAN interface_group ipv4-output-filter-10 bon0 nat-destination-101 eth2.2001 TRUSTEDv6 ipv6_network_group ipv6-input-filter-10 2001:db8::/64 TRUSTEDv4 network_group ipv4-forward-filter-20 192.0.2.0/30 203.0.113.128/25 PORT-SERVERS port_group route-PBR-201 443 route-PBR-201 5000-5010 nat-destination-101 http admin@ngfwos:~$Таймаут (Timeout) и срок действия (Expiration) присутствуют только в динамических группах.
Для получения информации о конкретной группе МЭ необходимо ввести следующую команду в эксплуатационном режиме:
admin@ngfwos:~$ show firewall group <name>
Копирование группы
Для копирования группы необходимо ввести следующие команды:
admin@ngfwos# edit firewall group [edit firewall group] admin@ngfwos# copy <typealias> <name1> to <typealias> <name2>где:
<name1> – имя оригинальной группы;
<name2> – имя создаваемой копии группы.
Переименование группы
Для переименования группы необходимо ввести следующие команды:
admin@ngfwos# edit firewall group [edit firewall group] admin@ngfwos# rename <typealias> <name1> to <typealias> <name2>где:
<name1> – изначальное имя группы;
<name2> – новое имя группы.
Группы в правилах МЭ
Для добавления группы в правило МЭ необходимо ввести команду, в зависимости от направления трафика:
set firewall <ipv4 | ipv6 | bridge> <rule_set> rule <num> source group <typealias> [<name> | <!name>] set firewall <ipv4 | ipv6 | bridge> <rule_set> rule <num> destination group <typealias> [<name> | <!name>]где:
«destination» – назначение;
«source» – источник;
<rule_set> – тип набора правил (см. Стандартная политика на основе системных наборов правил);
<name> – имя группы;
<!name> – имя группы с отрицанием.
Примечание
В случае попытки удаления групп, используемых в правилах NAT или МЭ, система выдаст сообщение о невозможности выполнения данной операции. Необходимо сначала исключить удаляемую группу из правил, после чего повторить удаление.
Стандартная политика на основе системных наборов правил
Наборы правил МЭ
Набор правил - это именованный пакет правил МЭ.
В зависимости от принадлежности трафика существуют следующие наборы правил (<rule_set>):
«input» - системный набор правил, предназначенные для фильтрации входящих в ARMA Стена пакетов.
«output» - системный набор правил, предназначенные для фильтрации исходящих от ARMA Стена пакетов.
«forward» - системный набор правил, предназначенные для фильтрации транзитных пакетов.
«name» - кастомный набор правил. Используется во всех вариантах работы МЭ, включая системные наборы «input», «output» и «forward», реализуемый через действия правила «jump».
В конфигурации по умолчанию системы ARMA Стена доступны системные наборы правил: «input», «output» и «forward». Эти наборы изначально не содержат никаких правил МЭ.
Для создания кастомного набора правил МЭ необходимо ввести следующую команду:
set firewall <type> name <nameset>где:
<type> – поддерживается настройка МЭ по следующим типам:
«ipv4» (см. Критерии соответствия в правилах МЭ «ipv4» и «ipv6»);
«ipv6» (см. Критерии соответствия в правилах МЭ «ipv4» и «ipv6»);
«bridge» (см. Срабатывание правил по расписанию).
<nameset> – имя кастомного набора правил. Требования к имени кастомного набора правил:
имя должно начинаться с латинской буквы (A–Z, a–z) или цифры (0–9);
запрещено использовать символы кириллического алфавита;
запрещено использовать специальные символы: «-», «_», «.», «|», «;», «:»,«&», «$», «<», «>», «!», «?», «/», «», «%», «»», «“», «#», «@», «*», «(», «)», «{», «}», «[», «]»;
запрещено использовать зарезервированные последовательности (в верхнем регистре): PREROUTING, VZONE, POSTROUTING, CONNMARK, MARK, MARKFILTER, FORWARD, INPUT, OUTPUT, VYATTA_, _HOOK.
Набор правил содержит действие по умолчанию, которое применяется к сетевому пакету, если ни одно из правил в наборе не сработало.
Для назначения действия по умолчанию для набора правил МЭ, необходимо ввести следующую команду:
для системных наборов правил:
set firewall <type> <input | output | forward> filter default-action <act>для кастомного набора правил:
set firewall <type> name <nameset> default-action <act>где <act> – действие по умолчанию.
Для системных наборов правил «input», «output» и «forward» возможно установить следующие значения действия по умолчанию (<act>):
accept - разрешить;
drop - отбросить.
По умолчанию для наборов правил «input» и «output» выполняется действие «accept», в то время как для наборов «forward» установлено действие «drop».
Для кастомных наборов правил («name») возможно установить следующие значения действия по умолчанию (<act>):
drop - отбросить, значение установлено по умолчанию;
jump - перейти;
reject - отклонить;
return - вернуться;
accept - разрешить;
continue - продолжить.
Для добавления описания в набор правил МЭ необходимо ввести следующую команду:
для кастомного набора правил:
set firewall <type> name <nameset> description <text>для системных наборов правил:
set firewall <type> <input | output | forward> filter description <text>где <text> – описание набора правил.
Для включения журналирования действия по умолчанию для набора правил МЭ необходимо ввести следующую команду:
для кастомного набора правил:
set firewall <type> name <nameset> default-logдля системных наборов правил:
set firewall <type> <input | output | forward> filter default-log
Правила МЭ
Создание правил МЭ
Правила МЭ необходимо создавать, придерживаясь следующего формата:
set firewall <type> <rule_set> rule <num> action <act>где:
<rule_set> – набор правил, к которому будет относиться правило. Возможно указать следующие значения: «input filter», «output filter», «forward filter» или «name»;
<num> – идентификатор правила. Возможно указание значения в диапазоне от «1» до «999999». Пакеты данных обрабатываются последовательно, начиная с «1» номера правила. В случае обнаружения первого соответствия с правилом, выполняется предписанное действие, после чего дальнейшая обработка данного пакета данных прекращается;
<act> – действие.
Посредством правил МЭ поддерживается выполнение следующих действий (<act>) над пакетом данных:
«accept» – разрешить.
«continue» – продолжить разбор следующего правила.
«drop» – отбросить пакет.
«reject» – отклонить пакет.
«jump» – перейти к кастомному набору правил.
При назначении действия «jump» требуется указать имя целевого кастомного набора правил с помощью дополнительной команды:
set firewall <type> <rule_set> rule <num> jump-target <nameset>Примечание
Целевой набор правил, на который ссылается правило, должен быть создан заранее. В противном случае при попытке сохранить правило система выдаст ошибку, что набор <nameset> не существует: «Invalid jump-target. Firewall ipv4 name <nameset> does not exist on the system».
«return» – вернуться к набору правил предыдущего уровня и продолжить разбор следующего правила.
Примечание
Настройка действия «return» поддерживается только для кастомных наборов правил.
«queue» - отправляет пакет в пользовательское пространство для дальнейшей обработки.
Данный оператор отправляет пакет в пространство пользователя с использованием функции nfnetlink_queue. Пакет помещается в очередь, идентифицируемую по 16-разрядному номеру. Пользовательское пространство может при необходимости просмотреть и изменить пакет. Затем пользовательское пространство должно удалить пакет или повторно отправить его в ядро. Также предусмотрена возможность активации опции обхода, которая позволит не выполнять операцию записи пакета в пользовательское пространство, если в очереди нет приложений, ожидающих обработки пакета. В таком случае правило будет действовать аналогично действию «Разрешить (accept)», если не обнаружено приложений, ожидающих пакет.
«offload» - определяет, какие потоки добавляются в таблицу потоков.
Таблицы потоков позволяют ускорить передачу пакетов в программном обеспечении (и в аппаратном обеспечении, если сетевой адаптер поддерживает эту функцию) за счёт обхода сетевого стека на основе conntrack. Записи представляются в виде кортежа, состоящего из входного интерфейса, адреса источника и назначения, порта источника и назначения, а также протоколов уровня 3/4. Каждая запись также кэширует информацию об интерфейсе назначения и адресе шлюза (для обновления адреса назначения на канальном уровне) с целью пересылки пакетов. Поля TTL и hoplimit также декрементируются. Таким образом, таблицы потоков обеспечивают альтернативный путь, позволяющий пакетам обойти классический путь пересылки. После установления состояния потоки разгружаются. Это означает, что первый ответный пакет обычно создаёт запись в таблице потоков. Для приёма исходного трафика требуется правило межсетевого экрана. Выражение потока в прямой цепочке должно соответствовать обратному трафику из исходного соединения. Следует иметь в виду, что обратный маршрут определяется на основе пакета, который создаёт запись в таблице потоков. Если используются определённые правила IP, необходимо убедиться, что они соответствуют как трафику ответного пакета, так и исходному трафику.
Примечание
Сетевой адаптер Intel серии X710 в системе ARMA Стена не поддерживает режим «offload».
«synproxy» - соединения synproxy.
Сетевой фильтр Synproxy перехватывает новые TCP-соединения и обрабатывает начальное трёхстороннее подтверждение связи по протоколу TCP, используя syncookies вместо conntrack для установления соединения. Таким образом, запуск SynProxy на порту прослушивающего сервера предотвращает использование ограниченных ресурсов conntrack при атаках типов SYN, SYN-ACK, ACK Flood на этот порт, при которых сервер подвергается воздействию большого количества syn-пакетов. Данное действие требует отслеживания соединения, поскольку необходимо передать порядковые номера. Принцип работы: сервер вычисляет значение на основе текущего состояния и отправляет его в SYN+ACK-пакете. Когда клиент возвращает ACK-пакет, сервер извлекает значение для аутентификации. Если значение верно, соединение считается установленным.
Для добавления описания правила МЭ необходимо ввести следующую команду:
set firewall <type> <rule_set> rule <num> description <text>где <text> – описание.
Для включения логирование правила необходимо ввести следующую команду:
set firewall <type> <rule_set> rule <num> logДополнительно возможно указать уровень логирование журнала правил МЭ:
set firewall <type> <rule_set> rule <num> log-options level <emerg | alert | crit | err | warn | notice | info | debug>где:
emerg - уровень журнала создание;
alert - уровень журнала предупреждений;
crit - критический уровень журнала;
err - уровень журнала ошибок;
warn - уровень журнала предупреждений;
notice - уровень журнала уведомлений;
info - уровень журнала информации;
debug - уровень журнала отладки.
Для отключения правила МЭ необходимо ввести следующую команду:
set firewall <type> <rule_set> rule <num> disable
Копирование правила МЭ
Копирование правил позволяет значительно ускорить процесс настройки МЭ.
Для копирования правила МЭ необходимо ввести следующие команды:
для кастомного набора правил:
admin@ngfwos# edit firewall <type> name <nameset> [edit firewall <type> name <nameset>] admin@ngfwos# copy rule <num1> to rule <num2> [edit firewall <type> name <nameset>] admin@ngfwos# exit [edit] admin@ngfwos#для системных наборов правил:
admin@ngfwos# edit firewall <type> <input | output | forward> filter [edit firewall <type> <input | output | forward> filter] admin@ngfwos# copy rule <num1> to rule <num2> [edit firewall <type> <input | output | forward> filter] admin@ngfwos# exit [edit] admin@ngfwos#где:
<num1> – идентификатор оригинального правила;
<num2> – идентификатор создаваемой копии правила.
Переименование правила МЭ
Для переименования правила МЭ необходимо ввести следующие команды:
для кастомного набора правил:
admin@ngfwos# edit firewall <type> name <nameset> [edit firewall <type> name <nameset>] admin@ngfwos# rename rule <num1> to rule <num2> [edit firewall <type> name <nameset>] admin@ngfwos# exit [edit] admin@ngfwos#для системных наборов правил:
admin@ngfwos# edit firewall <type> <input | output | forward> filter [edit firewall <type> <input | output | forward> filter] admin@ngfwos# rename rule <num1> to rule <num2> [edit firewall <type> <input | output | forward> filter] admin@ngfwos# exit [edit] admin@ngfwos#где:
<num1> – изначальный идентификатор правила;
<num2> – идентификатор переименованного правила.
Критерии соответствия в правилах МЭ «ipv4» и «ipv6»
ARMA Стена поддерживает возможность указания в правилах МЭ типа «ipv4» и «ipv6» различных критериев соответствия, по которым выполняется фильтрация.
Адрес источника
Для указания адреса источника в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> source address [<IPv4-address> | <addressrange> | <IPv6-address>]где:
<IPv4-address> – IPv4-адрес источника. Возможно указание в следующих форматах: <x.x.x.x>, <x.x.x.x/x>;
<addressrange> – диапазон IP-адресов. В зависимости от версии IP возможно указание в следующих форматах: <x.x.x.x>-<x.x.x.x>, <h:h:h:h:h:h:h:h>-<h:h:h:h:h:h:h:h>;
<IPv6-address> – IPv6-адрес источника. Возможно указание в следующих форматах: <h:h:h:h:h:h:h:h>, <h:h:h:h:h:h:h:h/x>.
Адрес назначения
Для указания адреса назначения в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> destination address [<IPv4-address> | <addressrange> | <IPv6-address>]где:
<IPv4-address> – IPv4-адрес назначения. Возможно указание в следующих форматах: <x.x.x.x>, <x.x.x.x/x>;
<addressrange> – диапазон IP-адресов. В зависимости от версии IP возможно указание в следующих форматах: <x.x.x.x>-<x.x.x.x>, <h:h:h:h:h:h:h:h>-<h:h:h:h:h:h:h:h>;
<IPv6-address> – IPv6-адрес назначения. Возможно указание в следующих форматах: <h:h:h:h:h:h:h:h>, <h:h:h:h:h:h:h:h/x>.
Протокол
Для указания протокола в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> protocol [<protocolname> | tcp_udp | all | <number>]где:
<protocolname> – протокол, определённый в «/etc/protocols»;
«tcp_udp» – протоколы TCP и UDP;
«all» – все протоколы;
<number> – номер протокола, определённый в «/etc/protocols». Возможно указание значения в диапазоне от «0» до «255».
Примечание
Поддерживается указание значение <protocolname> с использованием знака «!» для инверсии, например, «!ipcomp».
Для указания протокола «icmp» в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> icmp|icmpv6 <code <0-255> | type <0-255>>где:
<code> – номер кода icmp. Возможно указание значения в диапазоне от «0» до «255»;
«type» – номер типа icmp. Возможно указание значения в диапазоне от «0» до «255»;
Поддерживается указание имени типа «icmp» в качестве критерия соответствия:
set firewall ipv4|ipv6 <rule_set> rule <num> icmp|icmpv6 type-name <text>где <text> – имя типа icmp.
Для «icmp» возможно указать следующие значения:
echo-reply - ICMP тип 0;
destination-unreachable - ICMP тип 3;
source-quench - ICMP тип 4;
redirect - ICMP тип 5;
echo-request - ICMP тип 8;
router-advertisement - ICMP тип 9;
router-solicitation - ICMP тип 10;
time-exceeded - ICMP тип 11;
parameter-problem - ICMP тип 12;
timestamp-request - ICMP тип 13;
timestamp-reply - ICMP тип 14;
info-request - ICMP тип 15;
info-reply - ICMP тип 16;
address-mask-request - ICMP тип 17;
address-mask-reply - ICMP тип 18.
Для «icmpv6» возможно указать следующие значения:
destination-unreachable - ICMPv6 тип 1;
packet-too-big - ICMPv6 тип 2;
time-exceeded - ICMPv6 тип 3;
echo-request - ICMPv6 тип 128;
echo-reply - ICMPv6 тип 129;
mld-listener-query - ICMPv6 тип 130;
mld-listener-report - ICMPv6 тип 131;
mld-listener-reduction - ICMPv6 тип 132;
nd-router-solicit - ICMPv6 тип 133;
nd-router-advert - ICMPv6 тип 134;
nd-neighbor-solicit - ICMPv6 тип 135;
nd-neighbor-advert - ICMPv6 тип 136;
nd-redirect - ICMPv6 тип 137;
parameter-problem - ICMPv6 тип 4;
router-renumbering - ICMPv6 тип 138;
ind-neighbor-solicit - ICMPv6 тип 141;
ind-neighbor-advert - ICMPv6 тип 142;
mld2-listener-report - ICMPv6 тип 143.
Для указания флага протокола «tcp» в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> tcp flags <flags>где <flags> – флаг TCP.
Поддерживается указание следующих флагов:
«ack»;
«cwr»;
«ecn»;
«fin»;
«psh»;
«rst»;
«syn»;
«urg».
Для указания флага с инверсией необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> tcp flags not <flags>Для указания максимального размера сегмента в качестве дополнительного параметра протокола «tcp» необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> tcp mss <number>где <number> – максимальный размер сегмента. Возможно указание значения в диапазоне от «1» до «16384».
Поддерживается указание диапазона значений, разделённых знаком «-».
Для указания протокола «IPsec» в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> ipsec [match-ipsec | match-none]где:
<match-ipsec> – входящие пакеты IPsec;
«match-none» – входящие пакеты, не соответствующие IPsec.
Примечание
В случае необходимости изменения протокола, указанного в качестве критерия соответствия, требуется предварительно удалить значения дополнительных параметров заменяемого протокола.
Порт источника
Назначение порта источника в качестве критерия соответствия поддерживается только в случае указания следующих значений протокола: «tcp», «udp», «tcp_udp».
Для указания порта источника в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> source port [<portnumber> | <portname> | <rangenumbers>]где:
<portnumber> – номер порта источника. Возможно указание значения в диапазоне от «1» до «65535»;
<portname> – имя, определённое в «/etc/services»;
<rangenumbers> – диапазон портов, разделённых знаком «-».
Примечание
Поддерживается указание нескольких значений портов, разделённых знаком «,», например:
set firewall ipv4|ipv6 <rule_set> rule <num> source port http,1100-1200,25
Порт назначения
Назначение порта назначения в качестве критерия соответствия поддерживается только в случае указания следующих значений протокола: «tcp», «udp», «tcp_udp».
Для указания порта назначения в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> destination port [<portnumber> | <portname> | <rangenumbers>]где:
<portnumber> – номер порта назначения. Возможно указание значения в диапазоне от «1» до «65535»;
<portname> – имя, определённое в «/etc/services»;
<rangenumbers> – диапазон портов, разделённых знаком «-».
Примечание
Поддерживается указание нескольких значений портов, разделённых знаком «,».
Входящий интерфейс
Для указания входящего интерфейса в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> inbound-interface name <interface>где <interface> – имя интерфейса.
Примечание
Поддерживается указание входящего интерфейса в качестве критерия соответствия для правил категорий: «name», «forward filter», «input filter».
Исходящий интерфейс
Для указания исходящего интерфейса в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> outbound-interface name <interface>где <interface> – имя интерфейса.
Примечание
Поддерживается указание исходящего интерфейса в качестве критерия соответствия для правил категорий: «name», «forward filter», «output filter».
Статус пакета
Для указания статуса пакета в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> state [established | invalid | new | related]где:
«established» – установленный;
«invalid» – недопустимый;
«new» – новый;
«related» – связанный.
Доменное имя источника
Для указания доменного имени источника в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> source fqdn <fqdn>где <fqdn> – доменное имя.
Доменное имя назначения
Для указания доменного имени назначения в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> destination fqdn <fqdn>
GeoIP
Технология GeoIP позволяет создавать правила межсетевого экрана в зависимости от того, к какой стране или региону принадлежит адрес хоста.
Для указания GeoIP источника в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> source geoip country-code <country>где <country> – код страны, например, «ru». Перечень кодов стран приведён в таблице (см. Таблица «Коды стран»).
Для инверсии правила необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> source geoip inverse-matchПравило будет распространяться на IP-адреса, соответствующие всем геолокациям, кроме указанных в правиле.
Для указания GeoIP назначения в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> destination geoip country-code <country>
Для инверсии правила необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> destination geoip inverse-match
В рамках технологии GeoIP локальным подсетям, находящимся в диапазонах 10.0.0.0-10.255.255.255, 172.16.0.0-172.31.255.255, 192.168.0.0-192.168.255.255, fc00::-fdff:ffff:ffff:ffff:ffff:ffff:ffff:ffff, присвоен код страны «ZZ». Это необходимо учитывать при фильтрации сетевого трафика на основе принадлежности к определённым кодам стран. В случае необходимости следует создавать правила с более высоким приоритетом для разрешения пакетов с локальными IP-адресами. Пример:
set firewall ipv4 forward filter default-action 'accept' set firewall ipv4 forward filter default-log set firewall ipv4 forward filter rule 10 action 'accept' set firewall ipv4 forward filter rule 10 destination address '192.168.0.0/16' set firewall ipv4 forward filter rule 20 action 'drop' set firewall ipv4 forward filter rule 20 destination geoip country-code 'ru' set firewall ipv4 forward filter rule 20 destination geoip inverse-match set firewall ipv4 forward filter rule 20 logПравило 20 блокирует весь сетевой трафик, за исключением пакетов, содержащих IP-адреса, находящиеся в Российской Федерации. Поскольку IP-адреса локальной подсети предприятия не входят в список адресов с кодом страны RU, необходимо создать правило 10, разрешающее сетевой трафик для частной подсети 192.168.0.0/16, используемой на данном предприятии.
Таблица «Коды стран» Код
Страна
Код
Страна
AD
Андорра
AE
Объединённые Арабские Эмираты
AF
Афганистан
AG
Антигуа и Барбуда
AI
Ангилья
AL
Албания
AM
Армения
AO
Ангола
AQ
Антарктида
AR
Аргентина
AS
Американское Самоа
AT
Австрия
AU
Австралия
AW
Аруба
AX
Эландские острова
AZ
Азербайджан
BA
Босния и Герцеговина
BB
Барбадос
BD
Бангладеш
BE
Бельгия
BF
Буркина-Фасо
BG
Болгария
BH
Бахрейн
BI
Бурунди
BJ
Бенин
BL
Сен-Бартельми
BM
Бермуды
BN
Бруней-Даруссалам
BO
Боливия
BR
Бразилия
BQ
Бонайре, Саба и Синт-Эстатиус
BS
Багамские острова
BT
Бутан
BV
Остров Буве
BW
Ботсвана
BY
Беларусь
BZ
Белиз
CA
Канада
CC
Кокосовые острова (Килинг)
CD
ДР Конго
CF
ЦАР
CG
Конго
CH
Швейцария
CI
Республика Кот д’Ивуар
CK
Острова Кука
CL
Чили
CM
Камерун
CN
Китай
CO
Колумбия
CR
Коста-Рика
CU
Куба
CV
Кабо-Верде
CW
Кюрасао
CX
Остров Рождества
CY
Кипр
CZ
Чешская Республика
DE
Германия
DJ
Джибути
DK
Дания
DM
Доминика
DO
Доминиканская Республика
DZ
Алжир
EC
Эквадор
EE
Эстония
EG
Египет
EH
Западная Сахара
ER
Эритрея
ES
Испания
ET
Эфиопия
FI
Финляндия
FJ
Республика островов Фиджи
FK
Фолклендские острова
FM
Микронезия
FO
Фарерские острова
FR
Франция
GA
Габон
GB
Великобритания
GD
Гренада
GE
Грузия
GF
Французская Гвиана
GG
Гернси
GH
Гана
GI
Гибралтар
GL
Гренландия
GM
Гамбия
GN
Гвинея
GP
Гваделупа
GQ
Экваториальная Гвинея
GR
Греция
GS
Юж-я Георгия и Юж-е Сандвичевы о-ва
GT
Гватемала
GU
Гуам
GW
Гвинея-Бисау
GY
Гайана
HK
Гонконг
HM
Остров Херд и острова Макдональд
HN
Гондурас
HR
Хорватия
HT
Гаити
HU
Венгрия
ID
Индонезия
IE
Ирландия
IL
Израиль
IM
Остров Мэн
IN
Индия
IO
Британская тер. в Индийском океане
IQ
Ирак
IR
Иран, Исламская Республика
IS
Исландия
IT
Италия
JE
Джерси
JM
Ямайка
JO
Иордания
JP
Япония
KE
Кения
KG
Кыргызстан
KH
Камбоджа
KI
Кирибати
KM
Коморские острова
KN
Сент-Китс и Невис
KP
КНДР
KR
Республика Корея
KW
Кувейт
KY
Каймановы острова
KZ
Казахстан
LA
Лаос
LB
Ливан
LC
Сент-Люсия
LI
Лихтенштейн
LK
Шри-Ланка
LR
Либерия
LS
Лесото
LT
Литва
LU
Люксембург
LV
Латвия
LY
Ливийская Арабская Республика
MA
Марокко
MC
Монако
MD
Республика Молдова
ME
Республика Черногория
MF
Сен-Мартен
MG
Мадагаскар
MH
Маршалловы острова
MK
Республика Македония
ML
Мали
MM
Мьянма
MN
Монголия
MO
Макао
MP
Северные Марианские острова
MQ
Мартиника
MR
Мавритания
MS
Монтсеррат
MT
Мальта
MU
Маврикий
MV
Мальдивы
MW
Малави
MX
Мексика
MY
Малайзия
MZ
Мозамбик
NA
Намибия
NC
Новая Каледония
NE
Республика Нигер
NF
Остров Норфолк
NG
Нигерия
NI
Никарагуа
NL
Нидерланды
NO
Норвегия
NP
Непал
NR
Науру
NU
Ниуэ
NZ
Новая Зеландия
OM
Оман
PA
Панама
PE
Перу
PF
Французская Полинезия
PG
Папуа-Новая Гвинея
PH
Филиппины
PK
Пакистан
PL
Польша
PM
Сент-Пьер и Микелон
PN
Питкэрн
PR
Пуэрто-Рико
PS
Палестинская территория
PT
Португалия
PW
Палау
PY
Парагвай
QA
Катар
RE
Реюньон
RO
Румыния
RS
Сербия
RU
Российская Федерация
RW
Руанда
SA
Саудовская Аравия
SB
Соломоновы Острова
SC
Сейшельские Острова
SD
Судан
SE
Швеция
SG
Сингапур
SH
Острова Св. Елены
SI
Словения
SJ
Шпицберген и Ян-Майен
SK
Словакия
SL
Сьерра-Леоне
SM
Сан-Марино
SN
Сенегал
SO
Сомали
SR
Суринам
SS
Южный Судан
ST
Сан-Томе и Принсипи
SV
Республика Эль-Сальвадор
SX
Синт-Мартен
SY
Сирийская Арабская Республика
SZ
Королевство Эсватини
TC
Острова Тёркс и Кайкос
TD
Республика Чад
TF
ФЮАТ
TG
Того
TH
Таиланд
TJ
Таджикистан
TK
Токелау
TL
Восточный Тимор
TM
Туркменистан
TN
Тунис
TO
Тонга
TR
Турция
TT
Тринидад и Тобаго
TV
Тувалу
TW
Тайвань
TZ
Танзания
UA
Украина
UG
Уганда
UM
Внешние малые острова США
US
Соединённые Штаты Америки
UY
Уругвай
UZ
Узбекистан
VA
Государство Ватикан
VC
Сент-Винсент и Гренадины
VE
Венесуэла
VG
Британские Виргинские острова
VI
Виргинские острова (США)
VN
Вьетнам
VU
Вануату
WF
Уоллис и Футуна
WS
Независимое Государство Самоа
XK
Республика Косово
YE
Йемен
YT
Майотта
ZA
Южно-Африканская Республика
ZM
Замбия
ZW
Зимбабве
ZZ
Зарезервированный код
Для обновления базы данных GeoIP необходимо в режиме эксплуатации ввести следующую команду:
admin@ngfwos:~$ update geoip
Примечание
База данных GeoIP обновляется с ресурса «download.db-ip.com» на основании лицензии CC-BY-4.0.
Для обеспечения корректного процесса обновления требуется предварительная настройка DNS-сервера. Для этого следует выполнить команду:
set system name-server <address>
где <address> - IP-адрес DNS-сервера.
MAC-адрес источника
Для указания MAC-адреса источника в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> source mac-address <h:h:h:h:h:h>где <h:h:h:h:h:h> – MAC-адрес источника.
Значение DSCP
Для указания значения DSCP в качестве критерия соответствия необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> dscp [<0-63> | <start-end>]где:
<0-63> - номер класса трафика. Возможно указание значения в диапазоне от «0» до «63»;
<start-end> - диапазон значений класса трафика, разделённых знаком «-».
Для указания значения DSCP с инверсией необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> dscp-exclude [<0-63> | <start-end>]
Ethertype
EtherType — это 16-битное (2 байта) поле в заголовке Ethernet-кадра, следующее сразу за полями MAC-адресов источника и назначения. Данное поле определяет тип протокола, инкапсулированного в кадре. Фильтрация трафика по значениям поля EtherType позволяет осуществлять точную сегментацию сетевых пакетов и обрабатывать только требуемые типы кадров, такие как ARP, VLAN, LLDP, IPv6 и другие.
Для использования значения EtherType в качестве условия фильтрации необходимо ввести следующую команду:
set firewall ipv4|ipv6 <rule_set> rule <num> ethernet-type <text>где - <text> - значение поля EtherType в шестнадцатеричном формате 0xXXXX, где XXXX — двухбайтовое шестнадцатеричное число. Допускается указание символа отрицания «!». Например, <!0x0800> — все кадры, за исключением IPv4.
В системе ARMA Стена поддерживается возможность указания наиболее часто используемых значений EtherType не только в шестнадцатеричной форме, но и в виде соответствующего имени типа протокола:
802.1q — соответствует 0x8100 (VLAN Tagged Frame);
802.1ad — соответствует 0x88A8 (Provider Bridging);
arp — соответствует 0x0806 (Address Resolution Protocol);
ipv4 — соответствует 0x0800 (IPv4);
ipv6 — соответствует 0x86DD (IPv6);
lldp — соответствует 0x88CC (Link Layer Discovery Protocol);
ethercat — соответствует 0x88A4 (EtherCAT).
Критерии соответствия в правилах МЭ «bridge»
ARMA Стена поддерживает возможность указания в правилах МЭ типа «bridge» различных критериев соответствия, по которым выполняется фильтрация.
При настройке МЭ типа «bridge» необходимо учитывать следующие особенности:
поддерживается настройка по категориям «forward filter» и «name»;
для категории «forward filter» поддерживается назначение действия по умолчанию «accept» или «drop»;
не поддерживается назначение действия «reject».
MAC-адрес назначения
Для указания MAC-адреса назначения в качестве критерия соответствия необходимо ввести следующую команду:
set firewall bridge <rule_set> rule <num> destination mac-address <h:h:h:h:h:h>где <h:h:h:h:h:h> – MAC-адрес назначения.
Поддерживается указание MAC-адреса с использованием знака «!» для инверсии – <!h:h:h:h:h:h>.
MAC-адрес источника
Для указания MAC-адреса источника в качестве критерия соответствия необходимо ввести следующую команду:
set firewall bridge <rule_set> rule <num> source mac-address <h:h:h:h:h:h>где <h:h:h:h:h:h> – MAC-адрес источника.
Поддерживается указание MAC-адреса с использованием знака «!» для инверсии – <!h:h:h:h:h:h>.
Входящий интерфейс
Для указания входящего интерфейса в качестве критерия соответствия необходимо ввести следующую команду:
set firewall bridge <rule_set> rule <num> inbound-interface name <interface>где <interface> – имя интерфейса.
Поддерживается указание имени интерфейса с использованием знака «!» для инверсии или подстановочного символа «*», например:
«!eth0» – интерфейсы кроме «eth0»;
«eth2*» – интерфейсы, с именами начинающимися на «eth2».
Исходящий интерфейс
Для указания исходящего интерфейса в качестве критерия соответствия необходимо ввести следующую команду:
set firewall bridge <rule_set> rule <num> outbound-interface name <interface>где <interface> – имя интерфейса.
Поддерживается указание имени интерфейса с использованием знака «!» для инверсии или подстановочного символа «*».
Идентификатор VLAN
Для указания идентификатора VLAN в качестве критерия соответствия необходимо ввести следующую команду:
set firewall bridge <rule_set> rule <num> vlan id <vlan-id>где <vlan-id> – идентификатор VLAN. Возможно указание диапазона значений, разделённых знаком «-».
Приоритет VLAN
Для указания приоритета VLAN в качестве критерия соответствия необходимо ввести следующую команду:
set firewall bridge <rule_set> rule <num> vlan priority <number>где <number> – значение приоритета VLAN. Возможно указание значений в диапазоне от «0» до «7». Возможно указание диапазона значений, разделённых знаком «-».
EtherType
Для использования значения EtherType в качестве условия фильтрации необходимо ввести следующую команду:
set firewall bridge <rule_set> rule <num> [vlan] ethernet-type <text>где - <text> - значение поля EtherType в шестнадцатеричном формате 0xXXXX, где XXXX — двухбайтовое шестнадцатеричное число. Допускается указание символа отрицания «!». Например, <!0x0800> — все кадры, за исключением IPv4.
В системе ARMA Стена поддерживается возможность указания наиболее часто используемых значений EtherType не только в шестнадцатеричной форме, но и в виде соответствующего имени типа протокола:
802.1q — соответствует 0x8100 (VLAN Tagged Frame);
802.1ad — соответствует 0x88A8 (Provider Bridging);
arp — соответствует 0x0806 (Address Resolution Protocol);
ipv4 — соответствует 0x0800 (IPv4);
ipv6 — соответствует 0x86DD (IPv6);
lldp — соответствует 0x88CC (Link Layer Discovery Protocol);
ethercat — соответствует 0x88A4 (EtherCAT).
Срабатывание правил по расписанию
Для настройки временных условий активности правила в системе ARMA Стена используется параметр «time», позволяющий задать точные дату и время начала и завершения действия правила, а также указать дни недели, в которые правило должно быть активным.
Все временные параметры указываются в соответствии с системным временем устройства ARMA Стена.
Команды настройки параметра «time»:
Установка даты начала действия правила:
set firewall ipv4|ipv6 <rule_set> rule <num> time startdate <text>где <text> – дата начала действия правила в формате «YYYY-MM-DD».
Установка времени начала действия правила:
set firewall ipv4|ipv6 <rule_set> rule <num> time starttime <text>где <text> – время начала действия правила в формате «hh:mm:ss».
Установка даты завершения действия правила:
set firewall ipv4|ipv6 <rule_set> rule <num> time stopdate <text>где <text> – дата окончания действия правила в формате «YYYY-MM-DD».
Установка времени завершения действия правила:
set firewall ipv4|ipv6 <rule_set> rule <num> time stoptime <text>где <text> – время окончания действия правила в формате «hh:mm:ss».
Установка дней недели для действия правила:
set firewall ipv4|ipv6 <rule_set> rule <num> time weekdays <text>где <text> – дни недели. Возможно указать значение в виде текста: «Monday», «Tuesday», «Wednesday», «Thursdays», «Friday», «Saturday», «Sunday». Либо в формате числа от «0» (Sunday) до «6» (Saturday). Допускается указать несколько значений, разделённых запятыми, или диапазон значений, разделённых дефисом. Если значение содержит пробелы, то его необходимо заключить в двойные кавычки.
Политика на основе зон
В качестве альтернативы непосредственному применению политик к сетевым интерфейсам может быть создана зоновая модель брандмауэра. Эта модель упрощает конфигурацию в ситуациях, когда несколько интерфейсов принадлежат одной зоне безопасности. Вместо применения наборов правил к интерфейсам, правила применяются к парам «исходная зона — целевая зона». Правила настраиваются для зон, а не для отдельных интерфейсов, что снижает сложность конфигурации при большом количестве интерфейсов.
В МЭ на основе зон реализована новая концепция, дополнительно к стандартным входящим и исходящим потокам трафика был добавлен локальный поток. Он предназначен для входящего и исходящего трафика ARMA Стена. Это предоставляет возможность установить дополнительные правила МЭ, которые будут защищать сам брандмауэр от внешних угроз сети, дополняя уже существующие входящие и исходящие правила МЭ.
Основные тезисы:
перед назначением интерфейса зоне необходимо выполнить её конфигурацию;
интерфейс может быть назначен только одной зоне;
в пределах зоны разрешён весь входящий и исходящий трафик интерфейса;
трафик между зонами зависит от существующих политик;
трафик не может передаваться между интерфейсом-участником зоны и любым интерфейсом, который не является участником этой зоны;
для каждого направления трафика необходимо задать отдельную политику.
В общем случае алгоритм настройки работы МЭ на основе зон сети выглядит следующим образом:
Создать кастомные наборы правил МЭ, в которых будут содержаться правила.
Создать правила МЭ, указать в них критерии соответствия, действия с сетевыми пакетами и привязать эти правила к кастомным наборам.
Объединить интерфейсы в зоны.
Создать два направления трафика между зонами сети (входящий и исходящий трафик) и назначить на них созданные кастомные наборы правил.
Конфигурация зон
Назначение интерфейсов зоне:
set firewall zone <name> interface <interface>где:
<name> - имя зоны. Максимальная длина значения - «18» символов. Значение должно начинаться с латинской буквы или цифры. Допустимо использование символов латинского алфавита, цифр и специальных символов, за исключением: «-», «|», «;», «:»,«&», «$», «<», «>», «!», «?», «/», «\», «%», «"», «'», «#», «@», «*», «(», «)», «{», «}», «[», «]». Пробелы не допускаются.
<interface> - имя сетевого интерфейса ARMA Стена.
Одна зона может содержать несколько интерфейсов, но каждый интерфейс может быть назначен только одной зоне.
Определение локальной зоны:
set firewall zone <name> local-zoneКоманда определяет зону <name> как локальную. Локальная зона не содержит интерфейсов и применяется непосредственно к системе ARMA Стена.
Примечание
Добавление локальной зоны в МЭ приведёт к полной блокировке сетевого доступа к системе ARMA Стена. После выполнения данной операции управление устройством будет осуществляться исключительно через интерфейс командной строки (CLI) с использованием физического подключения (монитор и клавиатура). Доступ к устройству через локальную сеть будет полностью заблокирован. Для восстановления сетевого доступа необходимо применить кастомные наборы правил к локальной зоне, включающие разрешающие правила для сетевого трафика.
Настройка действия по умолчанию:
set firewall zone <name> default-action <drop | reject>где <drop | reject> - действие по умолчанию для трафика, который не соответствует ни одному правилу. Возможно указать следующие значения:
drop - пакеты отбрасываются без уведомления отправителя;
reject - отправителю возвращается сообщение об ошибке.
Примечание
По умолчанию, если на трафик между зонами не назначены правила, весь входящий в зону трафик блокируется.
Указать описание зоны:
set firewall zone <name> description <text>где <text> - текстовое описание зоны.
Применение набора правил к зоне
Перед применением набора правил к зоне необходимо предварительно создать и настроить сами зоны.
Кастомные наборы правил применяются к трафику, перемещающемуся между зонами, и должны быть описаны с точки зрения направления: исходная зона -> целевая зона. Это означает, что правила создаются для управления потоком данных из одной зоны в другую.
Для применения кастомного набора правил к зонам необходимо ввести следующую команду:
для IPv4:
set firewall zone <Destination Zone> from <Source Zone> firewall name <nameset>для IPv6:
set firewall zone <Destination Zone> from <Source Zone> firewall ipv6-name <nameset>где:
<Destination Zone> - целевая зона, куда направляется трафик;
<Source Zone> - исходная зона, откуда исходит трафик;
<nameset> - имя кастомного набора правил, который будет применяться к указанному направлению трафика.
Для каждой уникальной пары «Исходная зона -> Целевая зона» рекомендуется создавать отдельный набор правил. Это обеспечивает гибкость и точность настройки политик безопасности.
В качестве примера приведён список команд для разрешения доступа из локальной сети в сеть Интернет:
set firewall zone LAN local-zone set firewall zone WAN interface eth0 set firewall name allow rule 10 action accept set firewall name allow default-action accept set firewall zone LAN from WAN firewall name allow set firewall zone WAN from LAN firewall name allowгде:
«LAN» и «WAN» – имена зон;
«eth0» – интерфейс с доступом к сети Интернет;
«allow» – имя набора правил.
Мониторинг срабатывания правил
Система ARMA Стена позволяет отслеживать количество срабатываний правил межсетевого экрана.
Для получения сведений о количестве срабатываний каждого правила межсетевого экрана за различные временные интервалы необходимо выполнить следующую команду в эксплуатационном режиме:
admin@ngfwos:~$ show firewall hitcount #Пример вывода информации: Last update: 2025-05-12T13:20:01 -------------------------------------------------------------------- ipv4 Firewall "forward filter" Rule Action Day Hitcount Week Hitcount Month Hitcount ------- -------- -------------- --------------- ---------------- default drop 15 149 149 -------------------------------------------------------------------- ipv4 Firewall "input filter" Rule Action Day Hitcount Week Hitcount Month Hitcount ------- -------- -------------- --------------- ---------------- 10 accept 0 0 0 default accept 79779 471212 471212 -------------------------------------------------------------------- ipv4 Firewall "output filter" Rule Action Day Hitcount Week Hitcount Month Hitcount ------- -------- -------------- --------------- ---------------- default accept 76240 445097 445097 -------------------------------------------------------------------- ipv6 Firewall "forward filter" Rule Action Day Hitcount Week Hitcount Month Hitcount ------- -------- -------------- --------------- ---------------- default drop 0 0 0 -------------------------------------------------------------------- ipv6 Firewall "input filter" Rule Action Day Hitcount Week Hitcount Month Hitcount ------- -------- -------------- --------------- ---------------- default accept 3163 18787 18787 -------------------------------------------------------------------- ipv6 Firewall "output filter" Rule Action Day Hitcount Week Hitcount Month Hitcount ------- -------- -------------- --------------- ---------------- default accept 1132 6720 6720 -------------------------------------------------------------------- bridge Firewall "forward filter" Rule Action Day Hitcount Week Hitcount Month Hitcount ------- -------- -------------- --------------- ---------------- default drop 0 0 0 -------------------------------------------------------------------- ipv4 Firewall "name test" Rule Action Day Hitcount Week Hitcount Month Hitcount ------- -------- -------------- --------------- ---------------- 10 accept 4 4 4 default drop 15 149 149 --------------------------------------------------------------------Таблица сведений о количестве срабатываний каждого правила межсетевого экрана состоит из следующих столбцов:
«Rule» - номер правила МЭ;
«Action» - действие, применяемое к пакетам;
«Day Hitcount» - количество срабатывания правила за сегодня;
«Week Hitcount» - количество срабатывания правила за последние 7 дней;
«Month Hitcount» - количество срабатывания правила за последние 30 дней.
Данные в таблице обновляются с периодичностью в 20 минут (в XX:00, XX:20, XX:40 минут). При перезагрузке системы информация о количестве срабатываний правил МЭ сохраняется.