Уведомления
Зачем нужен этот раздел#
Уведомления — это способ LSUS проактивно сообщать администратору о событиях, на которые стоит отреагировать: недоступные хосты, истекающие сертификаты, ошибки синхронизации LDAP, новые пакеты в репозиториях.
LSUS сам формирует событие по настроенной категории и доставляет его по выбранным каналам: в интерфейс, на почту или во внешнюю систему по webhook.
Кратко
- Где смотреть: колокольчик в шапке интерфейса.
- Где настраивать: Администрирование → Настройки → Уведомления.
- Каналы: in-app, email (SMTP), webhook (HTTP POST).
Колокольчик в шапке#
В шапке рядом с именем пользователя есть колокольчик с бейджем числа непрочитанных уведомлений.
- Бейдж непрочитанных — цифра красным поверх колокольчика. Если её нет — всё прочитано. Бейдж считает только непрочитанные; уборка ленты его не меняет.
- Клик по колокольчику открывает выпадающую панель. Режим «Текущие» — открытые события, которые ещё не убраны из ленты: непрочитанные и прочитанные (прочитанные приглушены, причина ещё не снята). Режим «История» — те же фильтры категорий плюс убранные из ленты и закрытые события.
- «Прочитать все» (только в «Текущих») снимает бейдж: события остаются в ленте приглушёнными.
- «Очистить» (только в «Текущих») убирает прочитанные из текущей ленты в историю. Непрочитанные не трогает. Это не закрытие причины: повтор того же события не появится, пока причина не снята.
- В «Истории» кнопки «Прочитать все» и «Очистить» скрыты. «Закрыть» и действия шаттла доступны, только если событие ещё открыто.
- Несколько событий одного типа стоят вместе: над ними название типа и сколько их. Одно событие остаётся отдельной карточкой.
- Новое зеркало repo.lsus.ru на пограничном сервере приходит сюда. Добавить открывает форму репозитория с Edge. Скрыть убирает это предложение, оно может появиться снова. Игнорировать больше не предлагает это зеркало; запись видна в исключениях уведомлений, её снятие снова разрешает предложение.
Каналы доставки#
Уведомление доставляется по всем каналам, включённым для данной категории. Каналы независимы — если, например, SMTP недоступен, in-app всё равно сработает.
| Канал | Как работает | Когда подходит |
|---|---|---|
| in-app | Появляется в колокольчике. Хранится в базе LSUS. | Повседневная работа оператора прямо в интерфейсе. |
| Письмо на адреса получателей через настроенный SMTP. | Вне интерфейса: дежурный, рассылка группе админов. | |
| webhook | HTTP POST с JSON-телом события на внешний URL. | Интеграция с Telegram/Slack-ботом, системой инцидентов, дашбордом NOC. |
SMTP и webhook настраиваются централизованно
Параметры SMTP-сервера (хост, порт, аутентификация, отправитель) и webhook-эндпоинты задаются один раз в настройках уведомлений, а не в каждом правиле. В правиле выбирается только «куда доставить».
Категории событий#
LSUS формирует уведомления по следующим категориям. Каждую можно включить/выключить и направить в свой набор каналов.
| Категория | О чём сообщает | Типичный пример |
|---|---|---|
| Недоступные хосты | Машины, не выходившие на связь дольше порога (по умолчанию > 90 дней). | Списанные или забытые машины, требующие чистки или перерегистрации. |
| Недоступные Site/Edge | Site- или Edge-сервер перестал отвечать. | Филиал перестал получать обновления — клиенты тянут пакеты из WAN. |
| Истекающие сертификаты | TLS-сертификат Master/Site/Edge приближается к концу срока. | Заблаговременное предупреждение до истечения, чтобы успеть перевыпустить. |
| Новые пакеты в репозиториях | В подключённом репозитории появились новые версии пакетов. | Готовность к планированию кампании обновлений. |
| Ошибки LDAP-синхронизации | Очередная синхронизация с LDAP-источником завершилась с ошибкой. | Каталог недоступен или изменилась схема — автоназначение коллекций может отстать. |
| LDAP-объекты-orphans | В каталоге обнаружены объекты без ожидаемой привязки (orphan-записи). | «Висящие» компьютеры/пользователи, требующие разбора в AD/FreeIPA. |
| Множественный вход | Одна учётная запись одновременно активна на нескольких включённых хостах. Выключенный компьютер не считается: последняя сессия на нём остаётся в базе, пока он снова не выйдет на связь. Хосты с тегом «терминальный сервер» исключаются — на них множественные сессии легальны. | Подозрительная или нарушающая политику активность пользователя. |
| Вход администратора с нового IP | Пользователь с ролью администратора вошёл в консоль с адреса, с которого раньше не входил. | Первый вход, смена рабочего места или неожиданный доступ к учётке. |
| Низкие ресурсы Master | На сервере Master мало свободного места на диске, ОЗУ или заполнена очередь. | Риск остановки фоновых задач и репликации. |
Категории файлового шаттла#
Канал «Шаттл» добавляет свои категории на Master (полный сценарий — в руководстве «Файловый шаттл»):
| Категория | О чём сообщает |
|---|---|
| Новый бандл шаттла | В источнике появился бандл, который ещё не импортирован. |
| Устарел wsusscn2.cab | Активный каталог Windows старше порога (35 дней по умолчанию), нового бандла нет. |
| Старый бандл в источнике | В источнике лежит бандл старше уже импортированного. |
| Ошибка импорта бандла | Задание импорта рейса завершилось ошибками. |
| Источник шаттла недоступен | SMB/SFTP-источник недоступен или локальный каталог пуст (носитель не вставлен). |
| Задачи шаттла в очереди | Задачи уедут на Edge со следующим запросом — пора «Подготовить рейс». |
| Отчёт шаттла | Edge вернул отчёт по задачам Master. |
Уведомления о новом бандле и задачах в очереди содержат кнопки «Принять рейс» и «Подготовить рейс» — они открывают визарды сразу. Edge дополнительно сообщает: бандл готов к переносу, задачи Master применены, ошибка экспорта, автоэкспорт выполнен, бандл не забран Master (больше трёх дней — утренняя проверка).
Порог недоступности хостов
Порог «недоступный» (>90 дней по умолчанию) задаётся в правиле категории. Его можно изменить под свою практику — например, сделать более жёстким (30 дней) для критичных сегментов.
Терминальные серверы и множественный вход#
На терминальных серверах (RDS, xRDP, Citrix и подобных) один пользователь легально работает одновременно с другими — это штатный режим работы, а не нарушение. Без исключения такие хосты давали бы ложные срабатывания категории «Множественный вход»: сканер видел бы пользователя активным сразу на нескольких машинах и генерировал бы уведомление на каждый вход.
Чтобы этого избежать, LSUS автоматически исключает хосты с тегом «терминальный сервер» из детекции множественного входа. Сессии на таких хостах не учитываются при подсчёте одновременных входов пользователя.
Как настроить
- Перейдите в раздел «Хосты».
- Создайте тег с именем «терминальный сервер» (регистр не важен).
- Назначьте этот тег всем хостам, которые являются терминальными серверами.
После этого множественные входы пользователей на эти хосты перестанут генерировать уведомления. Подробнее о работе с тегами — в разделе «Хосты».
Имя тега по умолчанию
Имя тега «терминальный сервер» — значение по умолчанию. При необходимости его можно переопределить переменной окружения LSUS_MULTI_LOGIN_TERMINAL_TAG на сервере (например, задать английское имя или другой термин, принятый в организации). Пустое значение переменной отключает исключение — все хосты будут учитываться в детекции. Изменение применяется после перезапуска сервера.
Администрирование уведомлений#
Настройка находится в Администрирование → Настройки → Уведомления и разбита на четыре подвкладки: Правила, Транспорты, Исключения, История.
Правила по категориям#
Таблица сгруппирована по смыслу (инфраструктура, каталог, конфигурации). В строке сразу меняются включение и важность; остальные параметры открываются кнопкой редактирования.
| Поле правила | Назначение |
|---|---|
| Категория | Предопределённое событие. Подсказка и технический ключ — при наведении. |
| Вкл. | Выключенная категория не создаёт событий. |
| Важность | Информация / предупреждение / критично — как событие выглядит в колокольчике. |
| Каналы | Колокольчик, email, webhook. Иконка подсвечена, если канал включён. |
| Получатели | Все администраторы, конкретная роль или «по праву» (RBAC). |
| Дедупликация | Не повторять то же событие чаще, чем раз в N минут (в карточке правила). |
| Авто-закрытие | Снять уведомление, когда причина исчезла (в карточке правила). |
SMTP и webhook в правиле не настраиваются: выбираются уже созданные транспорты.
Транспорты#
Список каналов доставки: несколько SMTP и webhook. Параметры задаются в модалке. Кнопка «Проверить» отправляет тестовое сообщение — используйте её сразу после настройки, до включения правил на боевой режим.
Исключения (ignore-list)#
Список шаблонов в стиле fnmatch (как в shell: *, ?, [...]), которые исключают объекты из уведомлений выбранной категории.
Например:
| Шаблон | Что исключает |
|---|---|
*.test.example.com |
Все тестовые машины — не уведомлять об их недоступности. |
old-vm-* |
Списанные ВМ с известным префиксом. |
CN=service-* |
Сервисные учётные записи из множественного входа. |
Зачем нужен ignore-list
На больших парках всегда есть «шумные» объекты (тестовые стенды, старые ВМ), для которых постоянно срабатывают одни и те же уведомления. Ignore-list глушит именно их, не отключая категорию целиком.
История отправок#
История — журнал попыток доставить уведомление по email или webhook.
- В таблице: время, канал и транспорт, статус (отправлено / в очереди / ошибка), заголовок, краткий ответ.
- Клик по строке открывает полный ответ сервера. Для ошибочных отправок есть кнопка «Повторить».
- Параллельно LSUS сам повторяет неудачную доставку несколько раз с задержкой.
Порядок разбора «уведомление не пришло»
- Откройте История, найдите событие по времени.
- Посмотрите статус и полный ответ в карточке строки.
- Если отправки не было — проверьте, что категория включена, выбран транспорт и объект не попал в исключения.
- Если ошибка транспорта — нажмите «Проверить» в карточке транспорта.
Права доступа#
| Действие | Permission key |
|---|---|
| Просмотр своих уведомлений (колокольчик) | notifications.list.view |
| Просмотр/управление настройками уведомлений | admin.settings.operate |
| Просмотр Outbox | admin.settings.view |
Где настраивать
Уведомления — вложенный раздел подвкладки «Настройки» вкладки Администрирование. Права на управление наследуют admin.settings.operate, как и остальные подразделы «Настроек».