Инструментальная панель NGFW Zenarmor, которая показывает статистику сетевых соединений.
Инструментальная панель NGFW Zenarmor, которая показывает статистику сетевых соединений.
Категория: Железо Теги: Межсетевые экраны Опубликовано: 17 марта 2024

Бесплатный NGFW ZENARMOR на базе OpenSource-дистрибутива OPNsense

Решил написать цикл статей про межсетевые экраны, которые могут работать на уровнях l2, l3 и l4. Существует достаточно много opensource дистрибутивов на базе Linux или FreeBSD, которые были разработаны специально для создания межсетевых экранов. Отдельный вопрос их работоспособности, актуальности и эффективности, но они есть, и я решил их опробовать.
Решил начать с OPNsense - его я поставил на реальное железо и организовал межсетевой экран для своего компьютера, опробовав разные функции и плагины OpnSense, но не все, так как их очень много. Об этих функциях я и буду рассказывать, постепенно. 

Другие статьи про OPNsense и про другие межсетевые экраны следует искать в соответствующем разделе.

OPNsense имеет открытый исходный код и полностью бесплатен. Распространяется согласно лицензии BSD.

Многие пишут, что OPNsense использует HardenedBSD, но если установить его, то в панели управления можно увидеть версию "OPNsense 24.1.3_1-amd64 FreeBSD 13.2-RELEASE-p10 OpenSSL 3.0.13", то есть OPNsense всё таки использует FreeBSD!

Версия межсетевого экрана OPNsense

NGFW ZENARMOR

Начну я с "Next Generation Firewall Extensions for OPNsense (ZENARMOR)" - NGFW расширения для OPNsense под названием ZENARMOR. Само расширение по сути условно-бесплатное и в нем можно подключить расширенную подписку, которая открывает больше функциональных возможностей. Однако, даже бесплатной подписки расширения ZENARMOR хватит для реализации NGFW, и это будет значительно удобнее и эффективнее, чем обычный OPNsense или pfSense с хорошо настроенным IDS/IPS (snort, suricata). Именно поэтому мне кажется более эффективным решением именно OPNsense с плагином Zenarmor, нежели pfSense с настроенной системой обнаружения вторжений.

По заявлению разработчиков расширение NGFW для OPNsense (ZENARMOR) обеспечивает фильтрацию вплоть до 4 уровня модели OSI, начиная со второго. 

Также они заявляют, что Zenarmor расширяет возможности межсетевого экрана следующими функциями:

  • контроль приложений;
  • облачный контроль приложений (Web 2.0);
  • расширенная сетевая аналитика;
  • веб-фильтрация;
  • облачная аналитика угроз;
  • настраиваемая фильтрация и отчетность;
  • интеграция с Active Directory (отсутствует в бесплатной подписке, только в премиум подписке);
  • RESTful API;
  • централизованное управление и отчетность;
  • формирование и приоритезация трафика на основе категорий приложений и веб-категорий;
  • фильтрация на основе политик;
  • защита от зашифрованных угроз;
  • полная проверка TLS для всех портов (для каждого порта TCP, а не только HTTPS).

Последнее помечено словом "Скоро", но если верить отчёту, то после установки сертификата из раздела Certificate Authority в качестве доверенного корневого центра сертификации, он действительно расшифровывает траффик.

Установка NGFW Zenarmor

Для установки Zenarmor необходимо зайти в плагины и установить os-sunnyvalley, а после него установить os-sensei и os-sensei-updater.

Плагины Zenarmor, которые необходимо установить

Режим работы NGFW L2, L3

Слева появится вкладка Zenarmor. Должен будет появиться мастер установки, который поможет настроить ваш NGFW под ваши нужды.

Самое интересное это режим работы NGFW:

  • Passive Mode (Reporting only, no blocking);
  • Routed Mode (L3 Mode, Reporting and Blocking available) with native netmap driver;
  • Routed Mode (L3 Mode, Reporting and Blocking available) with emulated netmap driver;
  • Bridge Mode (L2 Mode, Reporting and Blocking available).

Режим L3 с собственным драйвером сетевой карты

Passive Mode - пассивный режим похож на режим IDS в Suricata. Zenarmor получает копии пакетов с настроенных интерфейсов и предоставляет вам обширную информацию в виде отчетов. В этом режиме выполнить блокировку какого-либо сетевого пакета невозможно. В пассивном режиме Zenarmor использует pcap вместо netmap.

Routed Mode (L3 Mode) - это вариант, при котором вы разворачиваете Zenarmor поверх брандмауэра и по-прежнему используете другие службы брандмауэра, такие как фильтрация L3/L4, маршрутизация, VPN и другие доступные плагины. В этом режиме вы можете не только создавать отчеты, но и пользоваться всеми функциями фильтрации. В этом режиме используется netmap для обработки пакетов.

В этом режиме он будет оперировать IP-адресами и MAC-адресами.

Для обработки пакетов на уровне L3 существует два режима:

  • native netmap driver;
  • emulated netmap driver.

Под "native netmap driver" понимается собственный драйвер сетевой карты. Этот вариант более производительный, но netmap может быть требователен к совместимости драйверов. Если есть подозрения, что драйверы сетевой карты плохо работают с netmap, тогда лучше всего использовать режим L3 с эмулируемым драйвером netmap.

Соответственно, под "emulated netmap driver" понимается эмулируемый драйвер. Такой режим гарантирует совместимость всех функций Zenarmor, но может быть менее производительным.

Bridge Mode (L2 Mode) - этот режим позволяет развернуть Zenarmor как встроенный шлюз. В этом режиме невозможно использовать другие существующие функции OPNsense, такие как межсетевой экран, VPN и другие плагины.

В этом режиме он будет оперировать только MAC-адресами.

После выбора режима работы NGFW Zenarmor не забудьте нажать "Show WAN interfaces" и назначить зоны защиты, то есть для внешнего интерфейса тег wan, а для внутреннего – lan. Это на самом деле важно, так как без этого он может не фильтровать WAN интерфейс, оставляя эту задачу на Suricata. 

Стоит отметить, что для защиты WAN интерфейса необходимо отключить систему обнаружения вторжений.

Если в вашем OPNsense журналы пусты, значит, стоит попробовать при установке не создавать HDD размером 8 гигабайт, то есть ответить на этот вопрос "нет". Также подобная проблема может быть из-за того, что при установке не были подключены сетевые интерфейсы, то есть сетевые кабели, или были подключены неправильно (кабель lan был в wan, а wan в lan) - в таком случае ставьте правильно и переустанавливайте.

Устройства в NGFW Zenarmor

NGFW Zenarmor автоматически обнаруживает новые устройства в сети и пытается их определять и сортировать, и делает это очень даже хорошо. Идентификацией телефонов сейчас никого не удивить - это даже роутеры умеют, а вот идентификацией телевизора и принтера можно, и он с этим очень даже неплохо справляется.

После одного из обновлений раздел Устройства стал доступен только в платной подписке.

Сперва зайдите во вкладку Устройства в Zenarmor и сделайте свои компьютеры и телефоны доверенными, то есть найдите их в списке, нажмите на них левой кнопкой мыши и поставьте галочку Trust. Те устройства, которые сейчас не подключены, можно будет позже сделать доверенными - главное сделать доверенными те, которые подключены сейчас и с которых управляем нашим NGFW.

Обнаруженные устройства

Настройка политики по умолчанию в NGFW Zenarmor

Переходим во вкладку Zenarmor, а в ней Policies. В бесплатной подписке тут доступна всего одна политика - Default. У меня активирован пробный период на 15 дней и, честно говоря, для дома хватит и бесплатной подписки в нашем NGFW.

Политики в межсетевом экране нового поколения Zenarmor

Нажимаем на политику Default левой копкой мыши, откроется окно настроек.

Настройки политики по умолчанию

В платной подписке доступна галочка "Block Untrusted Devices", при которой NGFW Zenarmor будет блокировать неизвестные устройства без отметки Trust. Однако перед нажатием этой галочки не забудьте поставить Trust для компьютера, с которого вы управляете межсетевым экраном. 

И не забывайте нажимать Apply Changes для применения изменений.

Дальше переходим во вкладку Security.

Фильтрация сетевых пакетов по категориям в политике по умолчанию

Тут уже прям интересно! Блок "Essential Security" доступен в бесплатной версии NGFW Zenarmor, а блок "Advanced Security" доступен только в расширенной подписке.
В Essential Security можете смело отмечать все пункты. Если будет заблокирован важный сайт - его можно будет добавить в исключения.
Блок Advanced Security добавляет множество действительно полезных для защиты возможностей, но для защиты домашней сети они скорее не требуются. В крайнем случае, расширенная подписка для дома стоит около ста баксов в год.

Блок Advances Security

Переходим во вкладку App Controls, и тут можно блокировать пакеты по категориям программ, например Ad Трекеры и Рекламные.

Категории приложений для фильтрации в политике по умолчанию

Переходим во вкладку Web Controls. Она позволяет блокировать веб-траффик по категориям, и можно выбрать потенциально опасные для детей категории. Однако хочу отметить, что блокирует она не по черному списку IP-адресов, а по запросам в поисковые системы. Иными словами, можно ввести адрес "запрещенного" сайта и он откроется, но вот если набрать его адрес или "запрещенные" ключевые слова в поиске, то поисковая выдача будет пустая. 

В бесплатном NGFW Zenarmor нельзя выбирать отдельные категории - только при помощи кнопок Permissive, Moderate Control и High Control. Категории по отдельности можно выбирать только при наличии платной подписки.

Фильтрация веб-траффика по категориям в политике по умолчанию

И у нас осталась последняя вкладка - Exclusions, то есть, исключения, которая позволяет добавлять исключения в текущую политику или глобально. Если блокируется сайт и его нужно разрешить, тогда его нужно добавить именно в этой вкладке.

Исключения в политике по умолчанию

Дополнительные настройки бесплатного NGFW Zenarmor в OPNsense

Честно говоря, я воодушевлён таким продуктом в составе OPNsense, и главное, что все от этого выигрывают. Пользователи получают бесплатный NGFW в виде расширения Zenarmor к OPNsense, а компания Sunny Valley Cyber Security Inc получает клиентов. Продукт очень качественный, удобный и интерактивный. Вдумайтесь, если 100 человек установят OPNsense вместе с плагином Zenarmor и воспользуются бесплатной подпиской, тогда сколько человек из этих 100 возьмет расширенную подписку? Не изучал статистику, но, думаю, что даже в самом худшем случае не менее 15-20.

Теперь поговорим про вкладку настройки в меню Zenarmor. Все настройки перечислять смысла не вижу.

Во вкладке Configuration можно переключить режим работы нашего NGFW.

Во вкладке Cloud Threat Intelligence можно включить обмен информацией об опасных объектах с облаком. Однозначно стоит включить.

Так называемая облачная защита в бесплатном NGFW ZenarmorТакже в этой вкладке следует выбрать два облачных сервера. Выбирайте те, с которыми лучше всего связь. Также советую проверять периодически, так как иногда 100ms могут превратиться в 3000ms.

Серверы обмена угрозамиВкладка Scheduled Reports позволяет запланировать отправку отчетов по расписанию.

Вкладка DNS Enrichment позволяет задать настройки DNS-сервера для выполнения обратного поиска IP-адресов. 

Вкладка Block Notification Page позволяет настроить свою страницу при блокировке, но я её увидеть так и не смог - просто страница недоступа.

Вкладка Active Directory Integration позволяет настроить интеграцию с Active Directory, но доступна эта функция только с расширенной подпиской.

Вкладка Certificate Authority предоставляет возможность работы с сертификатами, которые будут использоваться обработчиком пакетов. По идее сертификат нужно добавить как корневой, и наш NGFW должен начать расшифровывать пакеты.

Вкладка Backup & Restore позволяет создавать резервные копии настроек и данных, а также восстанавливаться из этих резервных копий.

Вкладка About показывает версию нашего NGFW Zenarmor, и тут можно нажать Check Update для проверки наличия обновлений ядра Zenarmor и базы данных.

Версия межсетевого экрана Zenarmor и базы данныхПрочие вкладки NGFW Zenarmor

Отчеты

Вкладка Reports показывает отчеты в виде графиков по соединениям, угрозам, заблокированному, web, DNS, TLS. Имеются множество фильтров. Отчеты можно скачивать.

Раздел отчетов в Zenarmor

Текущие соединения

Вкладка Live Sessions показывает текущие соединения. Эту страницу следует разворачивать на полный экран, так как таблица очень широкая. И как раз в самом конце таблицы, справа, есть кнопка block, позволяющая заблокировать это соединение. Также там есть кнопка Query Whois, которая позволяет узнать больше информации про узел назначения.

Также при помощи вкладок вверху можно посмотреть угрозы, блокировки, web, dns и tls-соединения.

Live Sessions в Zenarmor

Activity Explorer

Не менее интересная вкладка - Activity Explorer, в которого можно посмотреть активность приложений и сайтов. Немного сложное выражение, поэтому объясню. Делать скриншот смысла нет, так как таблица слишком большая.

Во вкладке Applications наш NGFW идентифицирует программы, которые пытаются выйти в сеть, хотя некоторые из указанных в списке являются самостоятельными онлайн-сервисами. 
Вкладка Web видимо показывает сайты, с которыми вы регулярно работаете.

Вкладка Уведомления

В этой вкладке содержатся уведомления, которые вы задали в соответствующем разделе настроек.

Уведомления в Zenarmor

Вывод

Бесплатный NGFW Zenamor при его установке в OPNsense обеспечивает удобный интерфейс и достаточно эффективную защиту от сетевых атак. Даже бесплатной подписки хватит для дешифровки сетевых пакетов и их анализа, то есть фактически для его работы на уровне L7, хотя технически при установке выбирается уровень L2 или L3.

Он идеально подходит для тех, кто хочет защитить небольшую сеть, но не хватает навыков, чтобы настроить все правила в IPS и iptables. При выборе в Zenamor защиты WAN-интерфейса он забирает на себя управление сетевым экраном и системой обнаружения вторжений.

В OPNsense в качестве IPS используется Suricata, в которой еще нужно скачать правила и отдельно каждое включить, а их может быть невероятное количество. NGFW Zenamor решает этот вопрос простым переключем бегунка. Списки обновляются не так часто, как у Suricata или Snort, но этот недостаток перекрывается необходимостью в Suricata/Snort настраивать каждое отдельное правило.

Простой список исключений позволяет разрешить отдельный IP-адрес или доменное имя.

OPNsense с бесплатной версией Zenamor на борту отлично подходит для защиты небольшой сети. Для сетей более крупного размера лучше брать расширенную подписку. Если у вас или вашего специалиста по информационной безопасности достаточно глубокие знания в тестировании на проникновение, тогда стоит сделать выбор в пользу Suricata на базе pfSense.

Алексей Черемных
614