Общее описание

С версии NAICE 1.1 реализована интеграция с системой мониторинга Peeper.

Установка Peeper Client

Перед настройкой и запуском Peeper Client требуется настроить Peeper Server. Для запуска сервера воспользуйтесь следующей документацией Peeper.

Для скачивания установочных файлов Peeper Client запустите плейбук install-peeper-client.yml из архива установки NAICE:

ansible-playbook install-peeper-client.yml -i inventory/<ваш-файл-hosts>.yml

Предустановленные inventory-файлы:

  • hosts.yml - для standalone установки
  • hosts-cluster.yml - для кластерной установки с VRRP
  • hosts-geo.yml - для кластерной установки без VRRP

Перед запуском плейбука не забудьте указать корректные адреса хостов в нужном файле.

Сгенерируйте токен в WEB Grafana (https://<адрес Peeper Server>). Зайдите в меню "Administration" → "Users and access" → "Service accounts" → "Add service account" → "Add service account token" → "Generate token".

Cкорректируйте переменные в файле <директория установки NAICE (по умолчанию /etc/docker-naice)>/peeper/.env:

  1. В переменных PEEPER_HOST и PEEPER_IP указать доменное имя и IP-адрес хоста Peeper Server соответственно. Если доменное имя не используется для доступа к Peeper Server, то указать IP-адрес Peeper Server в обеих переменных;
  2. В переменной PEEPER_TOKEN указать токен, ранее сгенерированный в WEB Grafana.

Команда для online установки Peeper Client:

cd <директория установки NAICE (по умолчанию /etc/docker-naice)>/peeper
sudo ./setup.sh -i

Команда для offline установки Peeper Client:

cd <директория установки NAICE (по умолчанию /etc/docker-naice)>/peeper
sudo ./setup.sh --load
sudo ./setup.sh -i

Мониторинг БД PostgreSQL

Сбор метрик PostgreSQL в Peeper Client осуществляется модулем peeper-exporter-postgres. Модуль не требует ручной настройки, так как он настраивается при установке NAICE плейбуками Ansible путем редактирования переменных окружения в файле /etc/docker-naice/peeper/.env.postgres.

Пример содержания файла /etc/docker-naice/peeper/.env.postgres при однохостовой установки NAICE:

POSTGRES_EXPORTER_ENABLED=true # Если значение 'true' модуль автоматически будет установлен вместе с Peeper Client

POSTGRES_HOST="naice-postgres" # Адрес базы данных PostgreSQL для подключения и снятия метрик
POSTGRES_PORT="5432" # Порт базы данных PostgreSQL для подключения и снятия метрик
POSTGRES_DB="" # Название базы данных PostgreSQL для мониторинга
POSTGRES_USER="postgres" # Пользователь базы данных PostgreSQL для подключения и снятия метрик
POSTGRES_PASSWORD="postgres" # Пароль для пользователя $POSTGRES_USER, который нужен для снятия метрик

Дашборды и алерты

Дашборды и алерты хранятся в папке /etc/docker-naice/peeper/provisioning/ и при установке Peeper Client автоматически переносятся в Peeper Server, если заполнена перменная PEEPER_TOKEN  в файле /etc/docker-naice/peeper/.env.

Список дашбордов

Всего доступно 15 дашбордов:

  • Castor Dashboard – метрики, связанные с порталом и портальной авторизацией;
  • Cetus Dashboard - метрики аутентификации в разных модулях;
  • HTTP Auth Errors Dashboard – количество различных ошибок, связанных с недостатком прав, при авторизации администратора в системе NAICE и выполнении запросов;
  • Lemmus Dashboard - Отображение метрик успешных и неуспешных попыток входа, 2FA;
  • Licensing Dashboard – метрики, связанные с лицензированием системы;
  • MS AD Netlogon Dashboard – метрики взаимодействия с внешним источником идентификации типа Active Directory при выполнении аутентификации пользователей по протоколу netlogon;
  • NATS Server Dashboard – метрики сервиса naice-nats;
  • PostgreSQL Dashboard - мониторинг и отображение состояния БД PostgreSQL;
  • RADIUS Dashboard – метрики Freeradius-сервера в составе сервиса naice-radius;
  • RADIUS Session Dashboard – метрики количества успешных/неуспешных аутентификаций/авторизаций по протоколу RADIUS в различных источниках идентификаций;
  • SIEM Dashboard – метрики по отправленным событиям в SIEM-системы;
  • SMS Gateway Dashboard – метрики по отправленным СМС в рамках портальной авторизации;
  • TACACS Dashboard – метрики TACACS-сервера
  • NAICE Details – метрики CPU, RAM и отображение состояния каждого из сервисов NAICE;
  • NAICE Overview –  отображение краткой информации по состоянию сервисов NAICE.

Список алертов

АлертОписаниеМетрикиПанельДействия
ELM availabilityСервер ELM недоступенlicense_elm_available – Текущий статус доступности ELMLicensing Dashboard –  ELM availability
  • Проверить состояние контейнера naice-gulo, при необходимости перезапустить
  • Проверить доступ до ELM сервера
License usageПроцент использования лицензии больше 90%
  • license_endpoints_max_size – Лимит эндпоинтов установленный в действующей лицензиии
  • hazelcast_endpoints_unique_per_day_size – Количество уникальных авторизованных эндпоинтов за текущие сутки
Licensing Dashboard –License usageЗапросить изменение параметров лицензии, если не хватает лимита эндпоинтов, установленного в текущей лицензии
License expiresСрок действия лицензии заканчиваетсяlicense_elm_expired_date – Дата окончания действия лицензииLicensing Dashboard – License expire dateЗапросить продление лицензии
Radius Authorization FailedРастет количество неуспешных Radius авторизацийradius_authorization_failed_number_total – Общее количество неуспешных авторизацийRADIUS Session Dashboard – Total failed authorizations
  • Проверить состояние контейнера naice-radius
  • Проверить конфигурации сетевых устройств и наборов политик
Radius Authentication Request FailedРастет количество некорректных запросов аутентификации Radius
  • freeradius_total_auth_dropped_requests – Количество запросов, которые были проигнорированы (сервер получил запрос, но не ответил)
  • freeradius_total_auth_duplicate_requests – Количестов дублирующихся запросов 
  • freeradius_total_auth_invalid_requests – Количество запросов аутентификации с некорректными данными
  • freeradius_total_auth_malformed_requests – Количество запросов, которые сервер не смог разобрать из-за повреждения или неправильного формата
  • freeradius_total_auth_unknown_types – Количество запросов с неизвестными или неподдерживаемыми типами сообщений
RADIUS Dashboard – Authentication incorrect requests (rate per 5m)
  • Проверить состояние контейнера naice-radius
  • Проверить конфигурации сетевых устройств и наборов политик
Radius Proxy Authentication Request FailedРастет количество некорректных запросов проксирования авторизации Radius
  • freeradius_total_proxy_auth_dropped_requests – Количество запросов проксирования, которые были проигнорированы  (сервер получил запрос, но не ответил)
  • freeradius_total_proxy_auth_duplicate_requests – Количестов дублирующихся запросов проксирования
  • freeradius_total_proxy_auth_invalid_requests – Количество запросов проксирования аутентификации с некорректными данными
  • freeradius_total_proxy_auth_malformed_requests – Количество запросов проксирования, которые сервер не смог разобрать из-за повреждения или неправильного формата
  • freeradius_total_proxy_auth_unknown_types – Количество запросов проксирования с неизвестными или неподдерживаемыми типами сообщений
RADIUS Dashboard –Authentication incorrect requests (rate per 5m)
Radius Authentication Failed MS ADРастет количество неуспешных Radius аутентификаций через источник идентификации MS AD

radius_authenticate_failed_number_total – Количество неуспешных аутентификаций для разных типов источников



RADIUS Session Dashboard – Failed authentications (MS AD)
  • Проверить доступность и состояние источника идентификации
  • Проверить логины/пароли в учетных записях
Radius Authentication Failed LDAPРастет количество неуспешных Radius аутентификаций через источник идентификации LDAPRADIUS Session Dashboard – Failed authentications (LDAP)
Radius Authentication Failed LOCALРастет количество неуспешных Radius аутентификаций через локальный источник идентификацииRADIUS Session Dashboard – Failed authentications (LOCAL)
Radius Authentication Time MS ADРастет время аутентификации пользователя по источнику MS AD

radius_authenticate_user_timer – Время аутентификации пользователя по определенному источнику

 

RADIUS Session Dashboard – Authentication time of 50%, 95%, 99% in MS AD
  • Проверить нагрузку и состояние источника идентификации
  • Проверить сетевую задержку
Radius Authentication Time LDAPРастет время аутентификации пользователя по источнику LDAPRADIUS Session Dashboard – Authentication time of 50%, 95%, 99% in LDAP
Radius Authentication Time LOCALРастет время аутентификации пользователя по источнику LOCALRADIUS Session Dashboard – Authentication time of 50%, 95%, 99% in LOCAL
Tacacs License ErrorКоличество ошибок лицензии Tacacs возрослоtacacs_reply_license_error_total – Количество отрицательных ответов TACACS из-за проблем с лицензиейTACACS Dashboard – License errors
  • Проверить доступность ELM
  • Проверить лицензионные лимиты
Tacacs Authentication Request FailedРастет количество некорректных запросов аутентификации Tacacs
  • tacacs_requests_invalid_counter_total – Количество TACACS запросов, которые были отклонены, так как их невозможно обработать
  • tacacs_requests_malformed_counter_total – Количество TACACS запросов, которые не удалось определить по протоколу TACACS
  • tacacs_requests_unknown_device_counter_total – Количество TACACS запросов от неизвестных сетевых устройств
TACACS Dashboard – Authentication incorrect requests (rate per 5m)
  • Просмотр логов TACACS+ (контейнер naice-aquilla) на предмет неизвестных устройств или ошибок формата
  • Проверить конфигурацию сетевых устройств
Tacacs Authentication FailedРастет количество ошибок в запросах аутентификации Tacacstacacs_reply_authenticate_fail_total – Количество отрицательных ответов аутентификацииTACACS Dashboard – Authentication – Fail
  • Просмотр логов TACACS+ (контейнер naice-aquilla)
  • Проверить корректность учетных записей и политик
Tacacs Authorization FailedРастет количество ошибок в запросах авторизации Tacacstacacs_reply_authorize_fail_total – Количество отрицательных ответов авторизации TACACSTACACS Dashboard – Authorization – Fail 
  • Просмотр логов TACACS+ (контейнер naice-aquilla)
  • Проверить корректность политик авторизации
Notification FailedРастет количество неуспешных отправок уведомленийnotification_failed_number_total – Число неудачно отправленных уведомлений по каждому типу ошибкиSMS Gateway Dashboard – General Information – Success/failed SMS ratio
  • Проверить логи смс-шлюза
  • Проверить доступность и баланс внешнего SMS-провайдера
Notification Template ErrorsРастет количество ошибок шаблона при отправке уведомленийnotification_template_errors_total – Число ошибок шаблонизацииSMS Gateway Dashboard – Main statistics – Error trends
  • Проверить логи смс-шлюза
  • Проверить доступность и баланс внешнего SMS-провайдера
Notification Validation ErrorsРастет количество ошибок валидации при отправке уведомленийnotification_validation_errors_total – Число ошибок валидацииSMS Gateway Dashboard – Main statistics – Error trends
Events FailedРастет количество ошибок отправки событий в SIEMnaice_siem_events_failed_total – Общее количество неудачных попыток отправки событий в SIEM по каждому протоколу, коллектору и типу ошибкиSIEM Dashboard – Failed events

Проверить доступность SIEM-системы

Captcha Verifications FailedРастет количество неуспешных верификаций Captchaportal_captcha_verifications_failed_number_total – Количество проваленных проверок captchaCastor Dashboard – Captcha – Verifications Failed Total
  • Проверить состояние контейнера naice-castor, при необходимости перезапустить
  • Проверить логи контейнера naice-castor
CoA Requests FailedРастет количество неуспешных CoA запросовportal_coa_requests_failed_number_total – Количество неуспешных CoA запросовCastor Dashboard – COA – Requests Failed

Проверить настройки RADIUS CoA в NAICE

Если не удается самостоятельно решить алерты, требуется собрать логи с помощью скрипта траблшутинга и обратиться в техподдержку.

Настройка отправки алертов на email

Настройка выполняется на Peeper Server!

Peeper поддерживает отправку уведомлений по электронной почте через модуль email. В основе лежит стандартный SMTP-механизм Grafana. Все параметры SMTP задаются в файле .env.email. Перед запуском модуля необходимо отредактировать этот файл.
Пример содержания .env.email файла:

EMAIL_ENABLED="true"
SMTP_HOST="smtp.example.loc:465"             # Имя хоста или IP-адрес и номер порта вашего SMTP-сервера
SMTP_USER="example.user@example.loc"         # Имя пользователя SMTP (если требуется аутентификация)
SMTP_PASSWORD="smtp.password"                # Пароль пользователя SMTP (если требуется аутентификация)
SMTP_FROM_NAME="peeper"                      # Отображаемое имя отправителя
SMTP_FROM_ADDRESS="peeper@example.loc"       # Адрес электронной почты отправителя
SMTP_EHLO_IDENTITY="peeper.example.loc"      # Идентификатор EHLO в диалоге SMTP
SMTP_STARTTLS_POLICY="OpportunisticStartTLS" # Политика StartTLS (MandatoryStartTLS, NoStartTLS, OpportunisticStartTLS)

Применить настройки:

cd /директория/установки/peeper/server
sudo ./setup.sh -i

После запуска Peeper Client необходимо настроить контактную точку в веб-интерфейсе:

  1. Откройте Peeper в браузере.
  2. Перейдите в раздел Alerting → Contact points.
  3. Нажмите Add contact point.
  4. Заполните форму:
       * Name - произвольное имя
       * Integration - выберите Email
       * Addresses - укажите один или несколько адресов получателей через точку с запятой
  5. Нажмите Test и убедитесь что письмо приходит.
  6. Сохраните контактную точку кнопкой Save contact point.

Чтобы алерты начали приходить на email, необходимо привязать созданную контактную точку к политике уведомлений:

1. Перейдите в Alerting → Notification policies.
3.  В политике Default Policy в поле Default contact point выберите созданную контактную точку.
4. Сохраните изменения.

Настройка отправки алертов в Telegram

Есть два способа настройки отправки уведомлений в чат Telegram при срабатывании алертов:

  1. В web-интерфейсе Grafana перейти в раздел "Alerting" → "Contact Points". Далее для Contact Point "NAICE Telegram" необходимо нажать "Edit",  в поле Chat ID ввести ID чата Telegram, куда должны отправляться уведомления, а в поле Bot API Token нажать Reset и ввести token Telegram бота, который должен быть добавлен в чат. Проверить корректность введенных данных и доставку алертов в чат можно кнопкой "Test". Далее необходимо сохранить настройки кнопкой "Save Contact Point".
  2. В конфигурационном файле Peeper Client peeper/.env:
    1. В переменной TELEGRAM_BOT_TOKEN указать Bot API Token;
    2. В переменной TELEGRAM_CHAT_ID указать Chat ID чата Telegram. 
    3. Применить настройки:
      cd <директория установки NAICE (по умолчанию /etc/docker-naice)>/peeper
      sudo ./setup.sh -i

Чтобы алерты начали приходить в Telegram, необходимо привязать созданную контактную точку к политике уведомлений:

1. Перейдите в Alerting → Notification policies.
3. В политике Default Policy в поле Default contact point выберите контактную точку "NAICE Telegram".
4. Сохраните изменения.

Настройка Peeper Client в OVA-образе NAICE

Полную документацию по установке NAICE с использованием OVA-образа можно найти по ссылке: v1.2_3.2 Установка с использованием OVA/QCOW2-образа (одиночная "stand-alone" установка)

1) После установки OVA-образа и авторизации в системе будет запущен процесс конфигурирования сервера NAICE. Для конфигурирования Peeper Client требуется перейти в раздел «Monitoring Options».

2) Нажать кнопку OK

3) Откроется меню для конфигурации Peeper Client. В процессе конфигурирования можно настроить следующие параметры:

  • Включить и выключить Peeper Client;
  • Задать IP- адрес и доменное имя Peeper Server;
  • Задать хостнейм для Peeper Client (по умолчанию - naice-server);
  • Добавить токен сервисного аккаунта Grafana для автоматической загрузки дашбордов и алертов на Peeper Server;
  • Добавить токен Telegram бота и идентификатор чата для отправки ботом алертов в чат Telegram.

При необходимости реконфигурации настроек мониторинга, перечисленных в пункте 3 (например, смена IP-адреса Peeper Server), необходимо заново запустить конфигуратор следующей командой:

sudo eltex-config


Просмотр

Для получения доступа к дашбордам метрик NAICE необходимо открыть браузер и перейти по адресу https://<IP-адрес Peeper-server>.

Логин и пароль пользователя по умолчанию - admin / admin. После авторизации будет предложено изменить пароль по умолчанию. Если в этом нет необходимости, внизу под полями ввода пароля можно нажать кнопку skip.

Чтобы просмотреть доступные дашборды, надо нажать на надпись Dashboards в списке в верней левой части экрана:

Откроется окно со списком доступных дашбордов:

  • Нет меток