# Интеграция pfSense c SecurityOnion

> Интеграция pfSense с SecurityOnion в Яндекс Облаке - зеркалирование трафика, пересылка логов и мониторинг через Suricata и Zeek

Source: https://opennix.org/docs/yc/securityonion/pfsense-securityonion-integration/


1. Для интеграции и анализа трафика с pfSense необходимо настроить связь между pfSense и Security Onion. Для этого необходимо открыть веб-интерфейс SecurityOnion и выбрать Elastic Fleet, как это показано на рисунке 1. 

![Выбор Elastic Fleet в SecurityOnion](/img/so-elastic-fleet.webp)
<p style="text-align: center;">Рис. 1. Выбор Elastic Fleet</p>

В открывшемся окне требуется перейти на вкладку “Agent policies” и выбрать “so-grid-nodes_general”. Следующим шагом необходимо нажать кнопку “Add integration”. Внешний вид окна представлен на рисунке 2. 

![Добавление интеграции в SecurityOnion](/img/so-add-int.webp)
<p style="text-align: center;">Рис. 2. Добавление интеграции</p>

В строке поиска необходимо набрать pfsense, как это показано на рисунке 3. 

![Поиск интеграции pfSense в SecurityOnion](/img/so-search-pf.webp)
<p style="text-align: center;">Рис. 3. Выбор pfSence</p>

И следующим шагом в появившемся окне нажать “Add pfSense”, как это показано на рисунке 4. 

![Добавление pfSense в SecurityOnion](/img/so-pf-conf.webp)
<p style="text-align: center;">Рис. 4. Добавление pfSence</p>

2. Настройки необходимо заполнить следующим образом: 

* Integration name - на усмотрение пользователя, например yc-pfsense;
* Syslog host - 0.0.0.0.

Остальные значения можно оставить по умолчанию и нажать “Save and continue”, как это показано на рисунке 5.

![Настройка syslog для pfSense в SecurityOnion](/img/so-pf-syslog.webp)
<p style="text-align: center;">Рис. 5. Окно настроек</p>

На следующем шаге необходимо нажать “Save” and “Deploy changes”, как это показано на рисунке 6:

![Применение настроек интеграции SecurityOnion](/img/so-pf-save-deploy.webp)
<p style="text-align: center;">Рис. 6. Применение настроек</p>

3. Необходимо открыть веб интерфейс SecurityOnion и перейти  `Administration` –> `Configuration`,
затем нажать на `Option` и выбрать `Show all configurable settings, including advanced settings`, как это показано на рисунке 7. 

![Окно расширенных настроек SecurityOnion](/img/so-full-opt.webp)
<p style="text-align: center;">Рис. 7. Окно расширенных настроек</p>

На левой панели необходимо перейти в настройки `firewall`, выбрать `hostgroups` и кликнуть на группу `customhostgroup0`. В правой части окна необходимо ввести IP-адрес pfSense и нажать “галочку” для сохранения, как это показано на рисунке 8. 

![Ввод IP-адреса pfSense в SecurityOnion](/img/so-hostgroup.webp)
<p style="text-align: center;">Рис. 8. Ввод IP-адреса pfSense </p>

Также на левой панели необходимо войти в настройки `firewall`, выбрать `portgroups`, затем выбрать группу `customportgroup0` и нажать на протокол UDP. В правой части окна необходимо ввести `9001` и нажать “галочку” для сохранения, как это показано на рисунке 9.

![Добавление UDP-порта в SecurityOnion](/img/so-portgroup.webp)
<p style="text-align: center;">Рис. 9. Добавление порта UDP </p>

В левой панели необходимо перейти в настройки `firewall`, выбрать role, затем выбрать тип узла (например, standalone), который будет получать журналы pfSense. На следующем шаге требуется  перейдите в `chain` –> `INPUT` –> `hostgroups` –> `customhostgroup0` –> `portgroups`. В правой стороне окна необходимо ввести customportgroup0 и нажать “галочку” для сохранения.

Для мгновенного принятия правил необходимо нажать на кнопку SYNCHRONIZE GRID в меню Option в верхней части страницы, как это показано на рисунке 10. 

![Мгновенное применение настроек SecurityOnion](/img/so-sync-grid.webp)
<p style="text-align: center;">Рис. 10. Мгновенное применение настроек </p>

На этом настройки для SecurityOnion закончены. 

4. Следующим шагом необходимо настроить отправку логов с pfSense. Для этого требуется открыть веб-интерфейс pfSense и выбрать в меню `Status` –> `System Logs`, как это показано на рисунке 11. 

![Настройка переадресации логов pfSense](/img/so-pf-status.webp)
<p style="text-align: center;">Рис. 11. Настройка переадресации System Logs</p>

На открывшейся странице необходимо выбрать `Settings` и прокрутить настройки в конец страницы. 

Для `Enable Remote Logging` необходимо установить “галочку”, для `Source Address` выбрать `LAN`, для `IP Protocol` выбрать `IPV4`.
На следующем шаге требуется прописать `ip` и `port SecurityOnion` в `Remote log servers`.

Для `Remote Syslog Contents` нужно выбрать `Everything` и нажать кнопку `Save`, как это показано на рисунке 12.

![Настройка удаленного логирования pfSense](/img/so-pf-remote-syslog.webp)
<p style="text-align: center;">Рис. 12. Выбор содержимого логов для пересылки в SecurityOnion</p>

Через несколько минут нужно проверить, что события отображаются в `SecurityOnion`.

Для этого необходимо открыть Hunt в поисковый запрос добавить `* | groupby event.module* event.dataset` и нажать `HUNT`. После обработки запроса нужно прокрутить страницу вниз и посмотреть, появились ли логи. 

Примеры событий представлены на рисунках 13 и 14. 

![Пример событий pfSense в SecurityOnion](/img/so-pf-dataset.webp)
<p style="text-align: center;">Рис. 13. Пример событий</p>

![Детальный пример события pfSense в SecurityOnion](/img/so-pf-event-example.webp)
<p style="text-align: center;">Рис. 14. Пример событий</p>

На этом интеграция завершена. 


