Логирование
Логирование сервисов настраивается в подсистеме system logging. Существует возможность экспортировать логи в файл, терминал и на удалённый хост.
Настройки глобального журнала
В ARMA Стена все логи хранятся в бинарном виде. Это необходимо для локального просмотра логов в интерфейсе CLI. По умолчанию для глобальных логов отведено место на диске в размере 10 Гб. После заполнения отведённого места старые логи будут перезаписываться.
Для изменения максимального размера локального хранилища всех журналов необходимо ввести следующую команду:
set system logging global max-size <size>где <size> – размер хранилища в гигабайтах. Возможно указание значения в диапазоне от «1» до «100».
Для просмотра фактического объёма, занимаемого всеми журналами, необходимо ввести следующую команду:
admin@ngfwos:~$ show logging global size
Для очистки всех журналов необходимо ввести следующую команду:
admin@ngfwos:~$ clear logging
Для того, чтобы ограничить количество сообщений, которые можно записать в журнал за один интервал времени, необходимо ввести следующую команду:
admin@ngfwos# set system logging global rate-limit-burst <logging_burst>где <logging_burst> – количество сообщений. Возможно указание значения в диапазоне от «1» до «200000». По умолчанию используется значение «10000».
Для того, чтобы задать длительность интервала, в течение которого можно записать указанное количество сообщений, необходимо ввести следующую команду:
admin@ngfwos# set system logging global rate-limit-interval <burst_interval>где <burst_interval> – интервал в секундах. Возможно указание значения в диапазоне от «1» до «600». По умолчанию используется значение «30».
Просмотр глобального журнала
Для вывода всех событий системы ARMA Стена в локальном консольном интерфейсе используется команда:
admin@ngfwos:~$ show logging all [| <filter>]где <filter> – дополнительный фильтр для уточнения и обработки выводимых данных. Возможно применить следующие фильтры:
«count» – подсчитывает количество строк, соответствующих текущему запросу, и выводит это число на экран. Позволяет быстро определить объём данных без необходимости их просмотра.
«json» – преобразует вывод в формате JSON. Используется при интеграции с внешними системами мониторинга или автоматизации.
«match <pattern>» – отображает только те строки, которые содержат заданный текстовый шаблон <pattern>. Позволяет выполнять точечный поиск событий по ключевым словам или кодам ошибок.
«no-match <pattern>» – исключает из вывода строки, содержащие указанный текстовый шаблон <pattern>. Позволяет скрывать информационные сообщения или другие несущественные записи.
«more» – активирует постраничный вывод результатов. Удобен при работе с длинными списками записей в консоли.
«no-more» – отключает постраничный вывод, обеспечивая немедленное отображение всего результата. Используется при необходимости получить полный вывод без пауз.
«strip-private» – маскирует или удаляет частную информацию из записей журнала, такую как IP-адреса, имена пользователей, идентификаторы сессий и т. д.. Используется при подготовке журналов для внешней отправки, например, службе поддержки, с соблюдением требований конфиденциальности.
Примечание
Некоторые дополнительные фильтры <filter> могут быть недоступны для использования в отдельных командах просмотра событий. В случае, если выбранная команда не поддерживает применение указанного фильтра, система отображает соответствующее информационное сообщение.
Для просмотра событий всех служб системы ARMA Стена в локальном консольном интерфейсе необходимо ввести команду:
admin@ngfwos:~$ show logging [| <filter>]
Для просмотра всех системных логов ядра (kernel logs) в локальном консольном интерфейсе необходимо ввести команду:
admin@ngfwos:~$ show logging kernel [| <filter>]
Для вывода событий, отфильтрованных по сервису, следует ввести команду:
admin@ngfwos:~$ show logging <service-name> [| <filter>]где <service-name> – имя сервиса, по которому выполняется фильтрация событий. Допускается указание следующих значений:
«all» – отображение всех журналов событий, генерируемых системой.
«arma-endpoint» – события службы контроля целостности.
«arpwatch» – события службы обнаружения устройств в сети.
«commit-commands» – события операций применения (commit) конфигурационных изменений, включая информацию о УЗ, времени и содержании внесённых изменений.
«conntrack» – события модуля отслеживания сетевых соединений.
«conntrack-sync» – события службы синхронизации таблицы отслеживания соединений (conntrack) между узлами кластера.
«console-server» – события, связанные с локальным доступом к командной строке через консольный интерфейс устройства.
«dhcp» – события DHCP-сервера и DHCP-клиента для протокола IPv4.
«dhcpv6» – события DHCP-сервера и DHCP-клиента для протокола IPv6.
«dns» – события встроенного DNS-резолвера, DNS-прокси или DNS-сервера.
«firewall» – события межсетевого экрана.
«http-api» – события, связанные с обработкой запросов системы к API: действия пользователей в веб-интерфейсе, служба синхронизации конфигурации.
«https» – события службы nginx.
«idps» – события системы обнаружения и предотвращения вторжений (СОВ).
«interface-state-sender» – события отправки уведомлений о состоянии сетевых интерфейсов внешним системам мониторинга или другим узлам.
«ipoe-server» – события сервера IP over Ethernet (IPoE).
«kernel» – системные события ядра ОС.
«lldp» – события протокола LLDP (Link Layer Discovery Protocol).
«login» – события подсистемы аутентификации и авторизации.
«nat» – события трансляции сетевых адресов и портов (NAT/PAT).
«ntp» – события синхронизации времени по NTP.
«pppoe» – события PPPoE-клиента.
«pppoe-server» – события PPPoE-сервера.
«reverse-proxy» – события обратного прокси-сервера.
«snmp» – события протокола SNMP.
«ssh» – события SSH-сервера.
«systemd» – события менеджера системных служб systemd.
«system-ip» – события FRR (Free Range Routing).
«third-party service drweb gss» – события компонента Dr.Web Gateway Security Suite.
«third-party service openvpn-gost» – события, связанные с интерфейсами ГОСТ OpenVPN.
«users» – события действий пользователей системы в интерфейсе командной строки.
«vpn» – события подсистемы VPN.
«vrrp» – события протокола VRRP.
«webproxy» – события модуля веб-прокси.
Для сервисов «commit-commands» и «users» фильтрация событий выполняется с учётом прав доступа пользователя. Выводятся только те записи, которые соответствуют действиям пользователей, принадлежащих к тому же классу доступа, что и текущий пользователь. События, связанные с действиями пользователей других классов, недоступны для просмотра. Фильтрацию по действиям пользователей возможно выполнить, указав класс, имя пользователя, дату и время событий:
admin@ngfwos:~$ show logging <service-name> class <class-name|all> [user <user-name|all>] [date <date|all>] [time <time|all>] [| <filter>]где:
<service-name> – имя сервиса;
<class-name|all> – имя класса. Если указано значение «all», фильтрация по классу не осуществляется. Для инвертирования значения используется знак «!»;
<user-name|all> – имя пользователя. Если указано значение «all», фильтрация по имени пользователя не осуществляется. Для инвертирования значения используется знак «!»;
<date|all> – дата события. Возможно указать значение в формате:
«yyyy-mm-dd» – выводятся записи лога, строго соответствующие указанной дате;
«yyyy-mm» – выводятся записи лога за каждый день указанного месяца и года;
«yyyy-mm-dd/yyyy-mm-dd» – выводятся записи лога с первой по вторую даты включительно;
«all» – фильтрация по дате не осуществляется;
<time|all> – время события. Возможно указать значение в формате:
«hh24:mm:ss» – выводятся записи лога, строго соответствующие указанному времени;
«hh24:mm» – выводятся записи лога, соответствующие указанному часу и минуте;
«hh» – выводятся записи лога, соответствующие указанному часу;
«hh24:mm:ss/hh24:mm:ss» – выводятся записи лога в указанный промежуток времени, включая пограничные метки времени;
«all» – фильтрация по времени не осуществляется.
Для всех сервисов, кроме «commit-commands», «nat» и «users», возможно дополнительно указать уровень события:
admin@ngfwos:~$ show logging <service-name> level <event_levels> [| <filter>]где <event_levels> – имя уровня события. Возможно указать значения, представленные в таблице «Уровни событий».
Уровень событий |
Уровень событий |
|---|---|
alert |
critical |
debug |
emergency |
error |
informational |
notice |
warning |
В случае фильтрации событий по сервису NAT возможно дополнительно указать направление трафика:
admin@ngfwos:~$ show logging nat <source|static|destination> [| <filter>]
Для сервиса VPN допустимо указать дополнительные фильтры:
admin@ngfwos:~$ show logging vpn [<filter>] [level <event_levels>] [| <filter>]где:
<filter> – имя фильтра. Возможно указать следующие значения:
«ipsec»;
«l2tp»;
«openconnect»;
«openvpn»;
«pptp»;
«sstp»;
«wireguard»;
<event_levels> – уровень события. Возможно ввести значение указанное в таблице «Уровни событий».
Для сервиса DNS предусмотрены дополнительные фильтры «dynamic» и «forwarding», которые возможно классифицировать по уровням событий, приведённым в таблице «Уровни событий»:
admin@ngfwos:~$ show logging dns <dynamic|forwarding> [level <event_levels>] [| <filter>]
Для сервиса «third-party service drweb gss» допустимо указать дополнительные фильтры:
admin@ngfwos:~$ show logging third-party service drweb gss [<filter>] [| <filter>]где <filter> – дополнительный фильтр событий журнала Dr.Web. Возможно указать следующие значения:
«config» – события, связанные с конфигурацией Dr.Web;
«http» – события, связанные с обработкой HTTP-запросов/ответов через Dr.Web;
«icapd» – события компонента Dr.Web ICAPD;
«netcheck» – события сетевых проверок, например, соединений с серверами обновлений;
«scan-engine» – события о работе сканирующего движка Dr.Web;
«update» – события, связанные с обновлением Dr.Web;
«url-check» – события проверки URL-адресов на предмет вредоносного содержимого.
События сервиса idps возможно отфильтровать с помощью дополнительных фильтров:
«all» – вывод всех событий Suricata:
admin@ngfwos:~$ show logging idps all [level <>] [| <filter>]«engine» – вывод событий запуска Suricata:
admin@ngfwos:~$ show logging idps engine [level <>] [| <filter>]«rules» – вывод событий срабатывания правил Suricata согласно настройкам ведения журнала (по умолчанию используется уровень «notice»):
admin@ngfwos:~$ show logging idps rules [level <>] [| <filter>]«server» – вывод событий, связанных с настройками Suricata:
admin@ngfwos:~$ show logging idps server [level <>] [| <filter>]«update-rules» – вывод событий, связанных с обновлением правил Suricata:
admin@ngfwos:~$ show logging idps update_rules [level <>] [| <filter>]
Для отслеживания актуальных событий системы в локальном консольном интерфейсе необходимо ввести команду:
admin@ngfwos:~$ monitor log [<filter_name>]где <filter_name> – фильтр событий глобального журнала. Список фильтров указан в таблице «Фильтры глобального журнала».
Фильтр |
Фильтр |
Фильтр |
Фильтр |
|---|---|---|---|
certbot |
conntrack-sync |
console-server |
container |
dhcp |
dhcpv6 |
dns |
flow-accounting |
frr |
haproxy |
idps |
ipoe-server |
ipsec |
kernel |
l2tp |
macsec |
mdns |
ndp-proxy |
nhrp |
ntp |
openconnect |
openvpn |
openvpn-gost |
pppoe |
pppoe-server |
pptp |
protocol |
router-advert |
snmp |
ssh |
sstp |
sstpc |
systemd |
vpn |
vrrp |
webproxy |
wireless |
Экспорт журнала
Экспорт журнала в файл
Для экспорта журналов в файл необходимо ввести следующую команду:
set system logging file <name> log <service-name>где:
<name> – имя целевого файла журнала. Максимальная длина – 127 символов;
<service-name> – идентификатор сервиса, по которому выполняется фильтрация событий (см. Таблица «Экспортируемые сервисы»).
Log-файлы сохраняются в каталоге «/var/log/user/».
Сервис |
Сервис |
Сервис |
Сервис |
|---|---|---|---|
arma-endpoint |
commit-commands |
conntrack |
conntrack-sync |
console-server |
dhcp |
dhcpv6 |
dns |
firewall |
http-api |
https |
idps |
ipoe-server |
kernel |
lldp |
login |
nat |
ntp |
pppoe |
pppoe-server |
snmp |
ssh |
systemd |
third-party |
users |
vpn |
vrrp |
webproxy |
Уровень логирования
Для всех сервисов, кроме «firewall», «kernel», «nat» и «users», допускается указание одного или нескольких уровней событий в соответствии с таблицей «Уровни событий». В файл экспортируются только те события, уровень которых соответствует указанному.
Примечание
Сервис webproxy использует собственную классификацию уровней логирования, включающую 10 уровней (в отличие от 8 уровней syslog). По умолчанию применяется первый уровень, приблизительно соответствующий уровню «informational» в syslog. При экспорте событий webproxy не рекомендуется указывать уровень «debug», поскольку события данного уровня в журнале отсутствуют.
В случае отсутствия явного указания уровня логирования при выполнении команды настройки экспорта, файл будет содержать все события, относящиеся к данному сервису, в соответствии с текущими системными настройками уровня логирования. Уровни логирования по умолчанию для различных сервисов приведены в таблице «Уровни логирования по умолчанию для сервисов».
Сервис |
Уровень логирования по умолчанию |
|---|---|
arma-endpoint |
informational |
arpwatch |
informational |
conntrack |
informational |
conntrack-sync |
informational |
console-server |
informational |
dhcp: client |
informational |
dhcp: server |
informational |
dhcpv6: client |
informational |
dhcpv6: server |
informational |
dns: dynamic |
informational |
dns: forwarding |
informational |
http-api |
informational |
https |
notice |
idps: engine |
notice |
idps: rules |
notice |
idps: server |
notice |
idps: update-rules |
notice |
ipoe-server |
informational |
lldp |
informational |
login |
informational |
ntp |
informational |
pppoe |
debug |
pppoe-server |
informational |
reverse-proxy |
informational |
snmp |
warning |
ssh |
debug |
systemd |
informational |
system-ip |
informational |
third-party: service drweb gss config |
notice |
third-party: service drweb gss http |
notice |
third-party: service drweb gss icapd |
notice |
third-party: service drweb gss netcheck |
notice |
third-party: service drweb gss scan-engine |
notice |
third-party: service drweb gss update |
notice |
third-party: service drweb gss url-check |
notice |
vpn: ipsec |
informational |
vpn: l2tp |
informational |
vpn: openconnect |
informational |
vpn: openvpn |
informational |
vpn: pptp |
informational |
vpn: sstp |
informational |
vpn: wireguard |
informational |
vrrp |
informational |
webproxy |
informational |
Пример команды для экспорта журнала в файл «LogSSH» с фильтрацией событий сервиса «ssh» по уровню «alert»:
set system logging file LogSSH log ssh level alert
Спецификация фильтрации по пользователям (сервис «users»)
При настройке экспорта журнала действий пользователей (users) допускается указание класса пользователей или имени определённого пользователя:
set system logging file <name> log users class <name_class> set system logging file <name> log users name <user>где:
<name_class> – класс пользователей;
<user> – имя пользователя.
В параметрах <name_class> и <user> допустимо указать несколько значений, разделённых запятыми без пробелов. Для инвертирования значения или значений необходимо использовать знак «!».
Спецификация фильтрации для NAT
При экспорте журнала NAT возможно указание направления трафика:
set system logging file <name> log nat <type-NAT>где <type-NAT> – допустимые значения: «destination», «source», «static».
Примечание
В случае настройки по направлениям «destination» и «static», будет выполняться логирование только первого пакета.
Спецификация фильтрации для VPN
Для журнала VPN доступны дополнительные фильтры по протоколам: «ipsec», «12tp», «openconnect», «openvpn», «pptp», «sstp», «wireguard». Фильтрация может быть дополнена указанием уровня события из таблицы «Уровни событий», например:
set system logging file ipsec_alert log vpn sstp level alertгде:
«ipsec_alert» – имя файла, в который будут записываться все события, соответствующие уровню «alert» протокола «sstp»;
«vpn sstp» – применённый фильтр событий;
«alert» – уровень логирования.
Спецификация фильтрации для DNS
Для журнала DNS предусмотрены дополнительные фильтры «dynamic» и «forwarding», которые возможно классифицировать по уровням событий, указанным в таблице «Уровни событий»).
set system logging file <name> log dns [<dynamic | forwarding> level <event_levels>]
Спецификация фильтрации для Dr.Web
Для сервиса «third-party service drweb gss» допускается указание дополнительного фильтра событий:
set system logging file <name> log third-party service drweb gss [<filter>]где <filter> – дополнительный фильтр событий журнала Dr.Web. Возможно указать следующие значения:
«config» – события, связанные с конфигурацией Dr.Web;
«http» – события, связанные с обработкой HTTP-запросов/ответов через Dr.Web;
«icapd» – события компонента Dr.Web ICAPD;
«netcheck» – события сетевых проверок, например, соединений с серверами обновлений;
«scan-engine» – события о работе сканирующего движка Dr.Web;
«update» – события, связанные с обновлением Dr.Web;
«url-check» – события проверки URL-адресов на предмет вредоносного содержимого.
Ротация журналов
Ротация журналов возможна по количеству и размеру файлов.
Для настройки ротации по количеству файлов необходимо ввести следующую команду:
set system logging file <name> rotation file <number>где <number> – количество файлов. Возможно указать значение в диапазоне от «1» до «100». По умолчанию используется значение «5».
Примечание
Возможно создать не более 64 файлов логирования.
Для настройки ротации по размеру файлов необходимо ввести следующую команду:
set system logging file <name> rotation size <number>где <number> – размер файлов в мегабайтах. Возможно указать значение в диапазоне от «1» до «1024». По умолчанию используется значение «5».
Экспорт на удалённый сервер по протоколу Syslog (RFC3164)
ARMA Стена позволяет выполнять экспорт событий на удалённый сервер, в том числе сервер Syslog.
Для передачи событий на удалённый сервер необходимо в режиме конфигурирования ввести следующую команду:
set system logging host <hostname> log <service-name>где:
<hostname> – доменное имя (FQDN) или IPv4-адрес удалённого сервера;
<service-name> – сервис для отправки (см. Таблица «Экспортируемые сервисы»).
Для того, чтобы ограничить количество сообщений, которые можно передать на удаленный сервер за один интервал времени, необходимо ввести следующую команду:
admin@ngfwos# set system logging host <hostname> log <service-name> rate-limit-burst <logging_burst>где <logging_burst> – количество сообщений. Возможно указание значения в диапазоне от «1» до «200000». Для каждого сервиса значение задается индивидуально.
Для того, чтобы задать длительность интервала, в течение которого можно передать указанное количество сообщений, необходимо ввести следующую команду:
admin@ngfwos# set system logging host <hostname> log <service-name> rate-limit-interval <burst_interval>где <burst_interval> – интервал в секундах. Возможно указание значения в диапазоне от «1» до «600». Для каждого сервиса значение задается индивидуально.
Настройки лимита и интервала доступны для всех сервисов, кроме «commit-commands», «kernel» и «users». Если у сервиса есть выбор конкретного типа логов, например, rules для сервиса «idps», то настройка rate-limit доступна для каждого типа логов сервиса по отдельности (исключение - сервис «nat»).
Настройки rate-limit-burst и rate-limit-interval могут использоваться только совместно. Если задано значение только одного из параметров, настройки применены не будут, несмотря на успешное сохранение и отображение в конфигурации.
Все дополнительные фильтры сервисов, которые возможно использовать при экспорте журналов на удалённый сервер, описаны в разделе «Экспорт журнала в файл».
Команды для настройки дополнительных параметров отправки событий на удалённый сервер:
set system logging host <hostname> protocol <protocol> set system logging host <hostname> port <portnumber> set system logging host <hostname> format <формат>где:
<protocol> – тип транспортного протокола. Допустимые значения «tcp» или «udp». По умолчанию используется протокол «tcp».
<portnumber> – порт удалённого сервера. По умолчанию используется порт «514».
<формат> – формат отправки событий на удалённый сервер. Допустимые значения «rfc3164» или «cef».
Экспорт событий на удалённый сервер с шифрованием TLS без проверки сертификатов
Настройка ARMA Стена
Для экспорта событий по протоколу Syslog на удалённый сервер с шифрованием TLS (RFC5425) без проверки сертификатов необходимо в режиме конфигурирования ввести следующие команды:
set system logging host <hostname> encryption yes set system logging host <hostname> protocol tcp set system logging host <hostname> port 6514 set system logging host <hostname> format cefВ режиме шифрования рекомендуется использовать порт «6514».
Примечание
Шифрование трафика осуществляется исключительно по протоколу «tcp».
Для версий rsyslog ниже 8.19.0, может потребоваться установка корневого сертификата УЦ в ARMA Стена (см. раздел «Установка сертификата УЦ»). Затем необходимо указать добавленный корневой сертификат в глобальных настройках с помощью следующей команды:
set system logging global ssl ca-certificate <имя_УЦ> commit save
Настройка сервера rsyslog
На сервере rsyslog требуется установить пакет «rsyslog-gnutls». Проверить наличие пакета возможно с помощью команды:
dpkg -l | grep rsyslog-gnutls
Если пакет не установлен, его возможно установить с помощью команды:
sudo apt-get install rsyslog-gnutls
Необходимо настроить сервер rsyslog для приёма шифрованного трафика от ARMA Стена:
... global( DefaultNetstreamDriver="gtls" DefaultNetstreamDriverCAFile="/path/to/contrib/gnutls/ca.pem" DefaultNetstreamDriverCertFile="/path/to/contrib/gnutls/cert.pem" DefaultNetstreamDriverKeyFile="/path/to/contrib/gnutls/key.pem" ) module( load="imtcp" StreamDriver.Name="gtls" StreamDriver.Mode="1" StreamDriver.Authmode="anon" ) input( type="imtcp" port="6514" ) ...
Экспорт событий на удалённый сервер с шифрованием TLS и проверкой сертификатов
При необходимости реализации сценариев с использованием одного корневого сертификата УЦ допускается установка в ARMA Стена сертификатов УЦ, выпущенных иным доверенным центром (см. раздел «Установка сертификата УЦ»). Установленные сертификаты УЦ могут использоваться для создания запросов на подписание клиентских сертификатов для ARMA Стена (см. «Создание запроса на подписание сертификата») и последующей их установки в ARMA Стена (см. «Установка сертификата»).
В качестве примера приведена настройка экспорта событий по протоколу Syslog на удалённый сервер с использованием шифрования протокола TLS (в соответствии с RFC 5425) и проверкой подлинности сертификатов, в которой система ARMA Стена выступает в качестве источника генерации необходимых криптографических сертификатов.
Для реализации указанного режима передачи данных необходимо выполнить следующую последовательность действий:
Сгенерировать и установить корневой сертификат УЦ, именованный «ca_test» (см. раздел «Создание удостоверяющего центра»).
Сгенерировать и установить клиентский сертификат «client_test», подписанный корневым сертификатом «ca_test» (см. раздел «Создание подписанного сертификата»), указав IP-адрес источника событий – «192.168.1.33» на запрос «Enter common name: (Default: ngfwos.net)» и тип сертификата – «client» на запрос «Enter certificate type: (client, server) (Default: server)».
Сгенерировать и сохранить в виде файлов сертификат «server_test» для сервера rsyslog (см. раздел «Создание подписанного сертификата»), указав IP-адрес сервера rsyslog – «192.168.1.27» на запрос «Enter common name: (Default: ngfwos.net)» и тип сертификата – «server» на запрос «Enter certificate type: (client, server) (Default: server)».
Копировать созданные файлы сертификата «server_test».
Разместить скопированные файлы в соответствующих директориях сервера syslog, используемых для хранения SSL-сертификатов и ключей.
Вывести содержимое корневого сертификата «ca_test», введя в эксплуатационном режиме команду:
admin@ngfwos:~$ show pki ca ca_test pem -----BEGIN CERTIFICATE----- a6BrgEuka -----END CERTIFICATE-----
Скопировать содержимое корневого сертификата «ca_test» и сохранить его в новый текстовый файл. Затем изменить расширение файла с «.txt» на «.pem» и импортировать файл на сервер rsyslog.
Настроить систему ARMA Стена на экспорт событий на сервер rsyslog:
# Добавить корневой и клиентский сертификаты в секцию глобальных настроек: set system logging global ssl ca-certificate ca_test set system logging global ssl certificate client_test # Установить отправку событий сервиса ssh на сервер rsyslog: set system logging host 192.168.1.27 log ssh set system logging host 192.168.1.27 format cef set system logging host 192.168.1.27 protocol tcp set system logging host 192.168.1.27 encryption yes set system logging host 192.168.1.27 port 6514 # Установить отправку событий на сервер rsyslog по адресу 192.168.1.27 с аутентификацией через X.509-сертификат клиента: set system logging host 192.168.1.27 authentication x509-name commit save
Экспорт в ARMA Management Console
Для экспорта журнала в ARMA Management Console в системе ARMA Стена необходимо создать и установить API-ключ для выполнения HTTP-запросов. API-ключ – это отдельный пароль для локальных УЗ в системе ARMA Стена, использующийся для выполнения HTTP-запросов. Данный ключ предоставляет доступ к системе ARMA Стена посредством ARMA MC начиная с версии 1.8 и выше. После создания ключа необходимо добавить ARMA Стена в список источников ARMA MC и выполнить дополнительные настройки для передачи событий.
Создание API-ключа
Для создания и установки API-ключа необходимо ввести следующую команду в конфигурационном режиме:
set service https api keys user <УЗ> key <key>где:
<УЗ> – имя локальной учётной записи в системе ARMA Стена;
<key> – пользовательский пароль (API-ключ) для локальной учётной записи <УЗ>. Данные параметры будут использоваться для взаимодействия с ARMA MC.
Применить настройки командой «commit»:
admin@ngfwos# commit WARNING: No certificate specified, using build-in self-signed certificates. Do not use them in a production environment! [ service https ] WARNING: No certificate specified, using build-in self-signed certificates. Do not use them in a production environment!Сохранить конфигурацию командой «save»:
admin@ngfwos# save
Примечание
При использовании API-ключа, созданного для учётной записи с ограниченными привилегиями в системе ARMA Стена (см. раздел «Права доступа» руководство по настройке ARMA Стена в веб-интерфейсе), доступ к функциональным возможностям веб-интерфейса ARMA Стена в ARMA MC будет предоставлен в соответствии с уровнем прав, назначенных данной УЗ. В случаях, когда доступ к определённому разделу отсутствует, в нижнем левом углу экрана будет отображаться сообщение об ошибке: «Request failed with status code 500».
Рекомендуется создать API-ключ для УЗ, относящейся к классу «NGFW_Administrators».
Настройка ARMA Management Console
Для подключения устройства ARMA Стена к программному обеспечению ARMA MC необходимо выполнить следующую последовательность действий:
Выполнить аутентификацию в веб-интерфейсе ARMA МС.
Выбрать раздел меню «Администрирование», затем – подраздел «Источники» (см. Рисунок – Источники).
Рисунок – Источники
В панели инструментов нажать кнопку «+ Добавить».
В открывшейся карточке «Добавление источника» выбрать тип источника «NGFW» и указать значения следующих параметров (см. Рисунок – Добавление нового источника событий «NGFW»):
«Наименование» – отображаемое в ARMA MC имя устройства. Параметр может содержать только латинские и кириллические буквы, пробел, спецсимволы («.», «_», «-») и не может превышать 128 символов.
«IP-адрес» – IP-адрес подключаемого устройства ARMA Стена.
«Логин пользователя» – имя УЗ, для которой сформирован API-ключ в системе ARMA Стена.
«API-Ключ» – пароль (<key>), указанный при создании API-ключа для УЗ в ARMA Стена.
Примечание
Если добавить источник «NGFW» с неверными реквизитами для подключения, ARMA Стена со своей стороны заблокирует дальнейшие попытки подключения на 10 минут. При этом в ARMA MC этот источник сначала перейдёт в состояние «Неавторизован», а затем в «Отключен». Если это произошло, необходимо исправить данные и сохранить изменения. Подключение произойдёт через 10 минут.
«Порт» – номер порта для приёма незашифрованных событий. Указываются порты в диапазоне от «1500» до «65535». Значение должно быть уникальным среди всех настроенных источников в ARMA MC.
«Передача шифрованных событий» – переключатель, определяющий режим приёма событий:
если активирован – события принимаются по протоколу TCP на порт 6514 в зашифрованном виде;
если отключён – события принимаются по протоколу UDP на порт, указанный в поле «Порт», в незашифрованном виде.
При необходимости заполнить поле «Описание» дополнительной информацией об устройстве. Поле может содержать не более 250 символов.
Рисунок – Добавление нового источника событий «NGFW»
После сохранения настроек в столбе «Статус» таблицы «Источники» отобразится значение «Подключено». При указании неверных учётных данных МС отобразит статус «Не авторизован». Статус «Ошибка» отображается, если произошла ошибка, которая может быть связана с аппаратным или программным обеспечением источника «NGFW», а также при использовании данных несуществующей локальной УЗ в ARMA Стена.
Настройка ARMA Стена
Передача событий в незашифрованном виде
Для настройки передачи событий в ARMA MC в незашифрованном виде требуется выполнение следующих команд в конфигурационном режиме:
Указать IP-адрес и порт ARMA MC:
set system logging host <address> port <portnumber>где:
<address> – IPv4-адрес ARMA MC;
<portnumber> – заданный при добавлении источника «NGFW» в ARMA MC.
Установить формат передачи событий CEF:
set system logging host <address> format cef
Задать протокол передачи UDP:
set system logging host <address> protocol udp
Указать сервисы, события которых подлежат экспорту:
set system logging host <address> log <service-name>где <service-name> – идентификатор сервиса из перечня, события которого будут передаваться в ARMA MC. Возможно указать следующие сервисы (см. Таблица «Сервисы»):
Сервис |
Сервис |
Сервис |
Сервис |
|---|---|---|---|
arma-endpoint |
commit-commands |
conntrack |
conntrack-sync |
console-server |
dhcp |
dhcpv6 |
dns |
firewall |
http-api |
https |
idps |
ipoe-server |
kernel |
lldp |
login |
nat |
ntp |
pppoe |
pppoe-server |
snmp |
ssh |
systemd |
third-party |
users |
vpn |
vrrp |
webproxy |
Дополнительные фильтры, применимые к экспорту журналов, описаны в разделе «Экспорт журнала в файл».
Применить конфигурацию командой «commit» и сохранить её командой «save».
Передача событий в зашифрованном виде
Для настройки передачи событий в ARMA MC в зашифрованном виде требуется выполнение следующих команд в конфигурационном режиме:
Указать IPv4-адрес ARMA MC и порт 6514:
set system logging host <address> port 6514где <address> – IPv4-адрес ARMA MC;
Установить формат передачи событий CEF:
set system logging host <address> format cef
Задать протокол передачи TCP:
set system logging host <address> protocol tcp
Активировать шифрование:
set system logging host <address> encryption yes
Указать сервисы, события которых подлежат экспорту:
set system logging host <address> log <service-name>где <service-name> – идентификатор сервиса из перечня в таблице «Сервисы».
Дополнительные фильтры описаны в разделе «Экспорт журнала в файл».
Применить конфигурацию командой «commit» и сохранить командой «save».
Экспорт в терминал пользователя
Для настройки экспорта журналов в терминал пользователя необходимо выполнить команду:
set system logging user-terminal <user-name> log <service-name>где:
<user-name> – имя пользователя, подключённого через CLI;
<service-name> – идентификатор сервиса (см. перечень).
Дополнительные фильтры, применимые к экспорту журналов в терминал пользователя, описаны в разделе «Экспорт журнала в файл».