Добавить в корзинуПозвонить
Найти в Дзене
IT, Python, Mikrotik, Linux

Уведомления при SSH входе на сервер через Zabbix

Предположим, вы хотите быть в курсе каждого подключения к вашему серверу по SSH. В этой статье мы объясним, как настроить уведомления в Zabbix при входе пользователя на Linux через SSH. В Linux лог SSH хранится в файле: Для защиты файла по умолчанию он доступен для чтения только пользователю root. Чтобы Zabbix мог считывать содержимое этого файла, выполните следующие действия: sudo chgrp zabbix /var/log/auth.log
sudo chmod 640 /var/log/auth.log Теперь нужно настроить шаблон Zabbix для мониторинга SSH. Создайте шаблон SSH login Найдите этот шаблон и откройте Элементы данных / Items Создайте новый элемент zabbix с такими настройками: Настройте триггер для вашего элемента: Добавляем этот шаблон к нужному серверу и все, готово. Теперь при успешной аутентификации, будь то с использованием пароля или SSH ключа, вы будете получать уведомление, содержащее имя пользователя и IP-адрес, с которого выполнено SSH подключение.

Предположим, вы хотите быть в курсе каждого подключения к вашему серверу по SSH. В этой статье мы объясним, как настроить уведомления в Zabbix при входе пользователя на Linux через SSH.

В Linux лог SSH хранится в файле:

  • RHEL/Rocky/Oracle Linux: /var/log/secure
  • Ubuntu/Debian: /var/log/auth.log
Для защиты файла по умолчанию он доступен для чтения только пользователю root. Чтобы Zabbix мог считывать содержимое этого файла, выполните следующие действия:

sudo chgrp zabbix /var/log/auth.log
sudo chmod 640 /var/log/auth.log

Теперь нужно настроить шаблон Zabbix для мониторинга SSH.

Создайте шаблон SSH login
Найдите этот шаблон и откройте Элементы данных / Items
-2
Создайте новый элемент zabbix с такими настройками:
  • Name: SSH login
  • Type: Zabbix agent (active)
  • Key: log[/var/log/auth.log,"Accepted .*",,,skip,\0]
  • Type of information: Log
-3
Настройте триггер для вашего элемента:
  • Name (Имя): Successful SSH authentication on {HOST.NAME}
  • Expression (Вырожение): length(last(/SSH login/log[/var/log/auth.log,"Accepted .*",,,skip,\0]))>0 and nodata(/SSH login/log[/var/log/auth.log,"Accepted .*",,,skip,\0],5m)=0

-4
Добавляем этот шаблон к нужному серверу и все, готово.

Теперь при успешной аутентификации, будь то с использованием пароля или SSH ключа, вы будете получать уведомление, содержащее имя пользователя и IP-адрес, с которого выполнено SSH подключение.

-5