Отличие от 2х других шаблонов в том что они смотрят в лог log[/var/log/auth.log или log[/var/log/secure , а в системах слогом systemd все немного иначе.
О Демон инициализации systemd
Показать
Демон инициализации systemd де-факто уже стал стандартом в современных Linux-системах. На него перешли многие популярные дистрибутивы: Debian, RHEL/CentOS, Ubuntu (начиная с версии 15.04). В systemd используется принципиально иной (по сравнению с традиционным инструментом syslog) подход к логгированию.
В его основе лежит централизация: специализированный компонент journal cобирает все системные сообщения (сообщения ядра, различных служб и приложений). При этом специально настраивать отправку логов не нужно: приложения могут просто писать в stdout и stderr, a journal сохранит эти сообщения автоматически. Работа в таком режиме возможна и с Upstart, но он сохраняет все логи в отдельный файл, тогда как systemd сохраняет их в бинарной базе, что существенно упрощает систематизацию и поиск.
Хранение логов в бинарных файлах также позволяет избежать сложностей с использованием парсеров для разных видов логов. При необходимости логи можно без проблем переконвертировать в другие форматы (более подробно об этом будет рассказано ниже).
Journal может работать как совместно с syslog, так и полностью заменить его.
Более подробно на Управление логгированием в systemd
В его основе лежит централизация: специализированный компонент journal cобирает все системные сообщения (сообщения ядра, различных служб и приложений). При этом специально настраивать отправку логов не нужно: приложения могут просто писать в stdout и stderr, a journal сохранит эти сообщения автоматически. Работа в таком режиме возможна и с Upstart, но он сохраняет все логи в отдельный файл, тогда как systemd сохраняет их в бинарной базе, что существенно упрощает систематизацию и поиск.
Хранение логов в бинарных файлах также позволяет избежать сложностей с использованием парсеров для разных видов логов. При необходимости логи можно без проблем переконвертировать в другие форматы (более подробно об этом будет рассказано ниже).
Journal может работать как совместно с syslog, так и полностью заменить его.
Более подробно на Управление логгированием в systemd
Скачать Команду для получения Новых и Завершенных сессий будем использовать следующую
journalctl -u 'systemd-logind' --since "today" --until "tomorrow" -o cat выводить будем с ключём -o cat так же есть другие варианты
Пример Вывода
Показать
Лог получаем за одни сутки, пример с перезагрузкой в течении суток
New session 37765 of user root.
Removed session 37765.
New session 37810 of user root.
Removed session 37810.
New session 37812 of user root.
Removed session 37812.
New session 37817 of user root.
Starting Login Service...
Watching system buttons on /dev/input/event1 (Power Button)
Watching system buttons on /dev/input/event0 (AT Translated Set 2 keyboard)
New seat seat0.
Started Login Service.
New session 1 of user root.
Failed to abandon session scope, ignoring: Transport endpoint is not connected
Stopping Login Service...
Stopped Login Service.
Removed session 1.
New session 6 of user root.
Removed session 6.
New session 8 of user root.
New session 37765 of user root.
Removed session 37765.
New session 37810 of user root.
Removed session 37810.
New session 37812 of user root.
Removed session 37812.
New session 37817 of user root.
Starting Login Service...
Watching system buttons on /dev/input/event1 (Power Button)
Watching system buttons on /dev/input/event0 (AT Translated Set 2 keyboard)
New seat seat0.
Started Login Service.
New session 1 of user root.
Failed to abandon session scope, ignoring: Transport endpoint is not connected
Stopping Login Service...
Stopped Login Service.
Removed session 1.
New session 6 of user root.
Removed session 6.
New session 8 of user root.
journalctl -u sshd
journalctl -u sshd --since "today" --until "tomorrow" -o cat
journalctl -q _AUDIT_TYPE=1112 _TRANSPORT=audit
Пример вывода journalctl -u sshd --since "today" --until "tomorrow" -o cat
Показать
Connection closed by 192.168.90.321 port 56230 [preauth]
Connection closed by 192.168.90.321 port 56756 [preauth]
pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
Accepted password for ROOT USER root from 192.168.80.9 port 49526 ssh2
pam_tcb(sshd:session): Session opened for root by (uid=0)
Received disconnect from 192.168.80.9 port 49526:11: disconnected by user
Disconnected from 192.168.80.9 port 49526
pam_tcb(sshd:session): Session closed for root
Connection closed by 192.168.90.321 port 49996 [preauth]
Connection closed by 192.168.90.321 port 50550 [preauth]
Connection closed by 192.168.90.321 port 43912 [preauth]
Connection closed by 192.168.90.321 port 48336 [preauth]
pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
Accepted password for ROOT USER root from 192.168.90.321 port 48018 ssh2
pam_tcb(sshd:session): Session opened for root by (uid=0)
Connection closed by 192.168.90.321 port 41688 [preauth]
Connection closed by 192.168.90.321 port 54000 [preauth]
pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
Accepted password for ROOT USER root from 192.168.90.321 port 37216 ssh2
pam_tcb(sshd:session): Session opened for root by (uid=0)
Connection closed by 192.168.90.321 port 47284 [preauth]
Первый ключ
system.run["journalctl -u sshd --since today --until tomorrow -o cat|egrep ^.*sshd.*'(Accepted|closed)'.*|tail -1"]
Более обширный 2 ключ
system.run["journalctl -u sshd --since today --until tomorrow -o cat|egrep ^.*'(Accepted|Disconnected|closed)'.*from.*|tail -1"]
3 Ключ
system.run["journalctl -u sshd --since today --until tomorrow -o cat|egrep ^.*'(Accepted|Disconnected|closed)'.*'(from|for)'.*|tail -1"]
Не всегда отображает выход(
Connection closed by 192.168.90.321 port 56756 [preauth]
pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
Accepted password for ROOT USER root from 192.168.80.9 port 49526 ssh2
pam_tcb(sshd:session): Session opened for root by (uid=0)
Received disconnect from 192.168.80.9 port 49526:11: disconnected by user
Disconnected from 192.168.80.9 port 49526
pam_tcb(sshd:session): Session closed for root
Connection closed by 192.168.90.321 port 49996 [preauth]
Connection closed by 192.168.90.321 port 50550 [preauth]
Connection closed by 192.168.90.321 port 43912 [preauth]
Connection closed by 192.168.90.321 port 48336 [preauth]
pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
Accepted password for ROOT USER root from 192.168.90.321 port 48018 ssh2
pam_tcb(sshd:session): Session opened for root by (uid=0)
Connection closed by 192.168.90.321 port 41688 [preauth]
Connection closed by 192.168.90.321 port 54000 [preauth]
pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
Accepted password for ROOT USER root from 192.168.90.321 port 37216 ssh2
pam_tcb(sshd:session): Session opened for root by (uid=0)
Connection closed by 192.168.90.321 port 47284 [preauth]
Первый ключ
system.run["journalctl -u sshd --since today --until tomorrow -o cat|egrep ^.*sshd.*'(Accepted|closed)'.*|tail -1"]
Более обширный 2 ключ
system.run["journalctl -u sshd --since today --until tomorrow -o cat|egrep ^.*'(Accepted|Disconnected|closed)'.*from.*|tail -1"]
3 Ключ
system.run["journalctl -u sshd --since today --until tomorrow -o cat|egrep ^.*'(Accepted|Disconnected|closed)'.*'(from|for)'.*|tail -1"]
Не всегда отображает выход(
Попытка с2х команд сделать одну строку
Показать
Для сравнения берем логин и время делаем 1 строку
journalctl -u systemd-logind --since today --until tomorrow|egrep ^.*'(New|Removed|Service)'.*|tail -1
journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1
ПРИМЕР:
Jun 16 07:56:30 ALTLINUX8 systemd[1]: Starting Login Service...
Jun 16 07:56:31 ALTLINUX8 systemd[1]: Started Login Service.
Jun 16 07:56:31 ALTLINUX8 systemd-logind[536]: New seat seat0.
Jun 16 07:57:15 ALTLINUX8 systemd-logind[536]: New session c1 of user _ldm.
Jun 16 07:57:59 ALTLINUX8 systemd-logind[536]: New session 5 of user user1.
Jun 16 10:41:13 ALTLINUX8 systemd-logind[536]: New session 438 of user root.
Jun 16 10:48:56 ALTLINUX8 systemd-logind[536]: New session 450 of user root.
Jun 16 11:44:22 ALTLINUX8 systemd-logind[536]: New session 543 of user root.
Jun 16 11:47:29 ALTLINUX8 systemd-logind[536]: Removed session 450.
Jun 16 11:47:35 ALTLINUX8 systemd-logind[536]: Removed session 543.
Jun 16 11:48:14 ALTLINUX8 systemd-logind[536]: New session 550 of user root.
Jun 16 11:48:14 ALTLINUX8 systemd-logind[536]: New session 551 of user root.
Jun 16 12:03:33 ALTLINUX8 systemd-logind[536]: New session 579 of user user1.
Jun 16 10:41:13 ALTLINUX8 sshd[2608]: Accepted password for ROOT USER root from 192.168.***.*** port 57577 ssh2
Jun 16 10:48:56 ALTLINUX8 sshd[5429]: Accepted password for ROOT USER root from 192.168.***.*** port 49835 ssh2
Jun 16 10:48:56 - уже закрыта и вновь открыта в Jun 16 11:48:14 с этого же узла под этим же логином , но в этот же момент с этого же хоста открыта еще одна сессия (терминал)
Если выполнен тот же вход с того же устройства (предыдущий выход не сделан) логин и IP новой записи нет
В таком случае совместить строки не выйдет!
journalctl -u systemd-logind --since today --until tomorrow|egrep ^.*'(New|Removed|Service)'.*|tail -1
journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1
ПРИМЕР:
Код: Выделить всё
journalctl -u systemd-logind --since today --until tomorrow|egrep ^.*'(New|Removed|Service)'.*
Jun 16 07:56:31 ALTLINUX8 systemd[1]: Started Login Service.
Jun 16 07:56:31 ALTLINUX8 systemd-logind[536]: New seat seat0.
Jun 16 07:57:15 ALTLINUX8 systemd-logind[536]: New session c1 of user _ldm.
Jun 16 07:57:59 ALTLINUX8 systemd-logind[536]: New session 5 of user user1.
Jun 16 10:41:13 ALTLINUX8 systemd-logind[536]: New session 438 of user root.
Jun 16 10:48:56 ALTLINUX8 systemd-logind[536]: New session 450 of user root.
Jun 16 11:44:22 ALTLINUX8 systemd-logind[536]: New session 543 of user root.
Jun 16 11:47:29 ALTLINUX8 systemd-logind[536]: Removed session 450.
Jun 16 11:47:35 ALTLINUX8 systemd-logind[536]: Removed session 543.
Jun 16 11:48:14 ALTLINUX8 systemd-logind[536]: New session 550 of user root.
Jun 16 11:48:14 ALTLINUX8 systemd-logind[536]: New session 551 of user root.
Jun 16 12:03:33 ALTLINUX8 systemd-logind[536]: New session 579 of user user1.
Код: Выделить всё
journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*
Jun 16 10:48:56 ALTLINUX8 sshd[5429]: Accepted password for ROOT USER root from 192.168.***.*** port 49835 ssh2
Jun 16 10:48:56 - уже закрыта и вновь открыта в Jun 16 11:48:14 с этого же узла под этим же логином , но в этот же момент с этого же хоста открыта еще одна сессия (терминал)
Если выполнен тот же вход с того же устройства (предыдущий выход не сделан) логин и IP новой записи нет
В таком случае совместить строки не выйдет!
команда journalctl -u sshd --since today --until tomorrow
Показать
Нормальный лог
май 29 05:31:19 proxyalt.RayonCSV21.local sshd[12084]: Connection closed by 192.168.90.121 port 50568 [preauth]
май 29 05:31:21 proxyalt.RayonCSV21.local sshd[12086]: Connection closed by 192.168.90.121 port 51156 [preauth]
май 29 05:31:36 proxyalt.RayonCSV21.local sshd[12092]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
май 29 05:31:36 proxyalt.RayonCSV21.local sshd[12092]: Accepted password for ROOT USER root from 192.168.90.8 port 37213 ssh2
май 29 05:31:36 proxyalt.RayonCSV21.local sshd[12092]: pam_tcb(sshd:session): Session opened for root by (uid=0)
май 29 05:31:37 proxyalt.RayonCSV21.local sshd[12092]: Received disconnect from 192.168.90.8 port 37213:11: disconnected by user
май 29 05:31:37 proxyalt.RayonCSV21.local sshd[12092]: Disconnected from 192.168.90.8 port 37213
май 29 05:31:37 proxyalt.RayonCSV21.local sshd[12092]: pam_tcb(sshd:session): Session closed for root
май 29 05:32:19 proxyalt.RayonCSV21.local sshd[12106]: Connection closed by 192.168.90.121 port 44270 [preauth]
май 29 05:32:20 proxyalt.RayonCSV21.local sshd[12108]: Connection closed by 192.168.90.121 port 44588 [preauth]
Но чаще так где нет Session closed или Disconnected, disconnect
май 29 10:59:20 proxyalt.RayonCSV21.local sshd[17580]: Connection closed by 192.168.90.121 port 60938 [preauth]
май 29 10:59:21 proxyalt.RayonCSV21.local sshd[17582]: Connection closed by 192.168.90.121 port 32926 [preauth]
май 29 11:00:15 proxyalt.RayonCSV21.local sshd[17605]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
май 29 11:00:15 proxyalt.RayonCSV21.local sshd[17605]: Accepted password for ROOT USER root from 192.168.90.121 port 49780 ssh2
май 29 11:00:15 proxyalt.RayonCSV21.local sshd[17605]: pam_tcb(sshd:session): Session opened for root by (uid=0)
май 29 11:00:20 proxyalt.RayonCSV21.local sshd[17659]: Connection closed by 192.168.90.121 port 53964 [preauth]
май 29 11:00:21 proxyalt.RayonCSV21.local sshd[17661]: Connection closed by 192.168.90.121 port 54226 [preauth]
май 29 11:01:20 proxyalt.RayonCSV21.local sshd[17682]: Connection closed by 192.168.90.121 port 46816 [preauth]
Берем данные
Ключем system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"]
Сравниваем значение входа выхода в скобках тегом session-journalctl-{{ITEM.VALUE}.iregsub("\[(.*)\]:", "\1")}
Триггер на вход
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].str(Accepted,#1)}=1 and
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].diff(0)}=1
Триггер на выход
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].str(closed,#1)}=1 or
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].str(Disconnected,#1)}=1 or
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].str(disconnect,#1)}=1 or
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].str(Received,#1)}=1
Тег для закрытия при перезагрузке {{ITEM.VALUE}.iregsub("(Received .*)", "\1")}
май 29 05:31:19 proxyalt.RayonCSV21.local sshd[12084]: Connection closed by 192.168.90.121 port 50568 [preauth]
май 29 05:31:21 proxyalt.RayonCSV21.local sshd[12086]: Connection closed by 192.168.90.121 port 51156 [preauth]
май 29 05:31:36 proxyalt.RayonCSV21.local sshd[12092]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
май 29 05:31:36 proxyalt.RayonCSV21.local sshd[12092]: Accepted password for ROOT USER root from 192.168.90.8 port 37213 ssh2
май 29 05:31:36 proxyalt.RayonCSV21.local sshd[12092]: pam_tcb(sshd:session): Session opened for root by (uid=0)
май 29 05:31:37 proxyalt.RayonCSV21.local sshd[12092]: Received disconnect from 192.168.90.8 port 37213:11: disconnected by user
май 29 05:31:37 proxyalt.RayonCSV21.local sshd[12092]: Disconnected from 192.168.90.8 port 37213
май 29 05:31:37 proxyalt.RayonCSV21.local sshd[12092]: pam_tcb(sshd:session): Session closed for root
май 29 05:32:19 proxyalt.RayonCSV21.local sshd[12106]: Connection closed by 192.168.90.121 port 44270 [preauth]
май 29 05:32:20 proxyalt.RayonCSV21.local sshd[12108]: Connection closed by 192.168.90.121 port 44588 [preauth]
Но чаще так где нет Session closed или Disconnected, disconnect
май 29 10:59:20 proxyalt.RayonCSV21.local sshd[17580]: Connection closed by 192.168.90.121 port 60938 [preauth]
май 29 10:59:21 proxyalt.RayonCSV21.local sshd[17582]: Connection closed by 192.168.90.121 port 32926 [preauth]
май 29 11:00:15 proxyalt.RayonCSV21.local sshd[17605]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
май 29 11:00:15 proxyalt.RayonCSV21.local sshd[17605]: Accepted password for ROOT USER root from 192.168.90.121 port 49780 ssh2
май 29 11:00:15 proxyalt.RayonCSV21.local sshd[17605]: pam_tcb(sshd:session): Session opened for root by (uid=0)
май 29 11:00:20 proxyalt.RayonCSV21.local sshd[17659]: Connection closed by 192.168.90.121 port 53964 [preauth]
май 29 11:00:21 proxyalt.RayonCSV21.local sshd[17661]: Connection closed by 192.168.90.121 port 54226 [preauth]
май 29 11:01:20 proxyalt.RayonCSV21.local sshd[17682]: Connection closed by 192.168.90.121 port 46816 [preauth]
Берем данные
Ключем system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"]
Сравниваем значение входа выхода в скобках тегом session-journalctl-{{ITEM.VALUE}.iregsub("\[(.*)\]:", "\1")}
Триггер на вход
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].str(Accepted,#1)}=1 and
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].diff(0)}=1
Триггер на выход
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].str(closed,#1)}=1 or
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].str(Disconnected,#1)}=1 or
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].str(disconnect,#1)}=1 or
{SSH Auth journalctl Alt Linux:system.run["journalctl -u sshd --since today --until tomorrow|egrep ^.*'(Accepted|Disconnected|disconnect|Session closed|Received)'.*|tail -1"].str(Received,#1)}=1
Тег для закрытия при перезагрузке {{ITEM.VALUE}.iregsub("(Received .*)", "\1")}
Опции для journalctl
Показать
Фильтрация по дате
С помощью опции --since вы можете указать дату и время, начиная с которой нужно отображать логи:
"today" "сегодня"
Опция --until помогает указать по какую дату вы хотите получить информацию
Настройка формата вывода
--until tomorrow -- до завтра
По умолчанию journalctl выводит информацию с помощью утилиты less, в которой вы можете её удобно листать и просматривать. Но формат вывода можно изменить:
short - используется по умолчанию;
verbose - также, как и short, только выводится намного больше информации;
json - вывод в формате json, одна строка лога в одной строке вывода;
json-pretty - форматированный вывод json для более удобного восприятия;
cat - отображать только сообщения, без метаданных.
Примеры других опций
С помощью опции --since вы можете указать дату и время, начиная с которой нужно отображать логи:
"today" "сегодня"
Опция --until помогает указать по какую дату вы хотите получить информацию
Настройка формата вывода
--until tomorrow -- до завтра
По умолчанию journalctl выводит информацию с помощью утилиты less, в которой вы можете её удобно листать и просматривать. Но формат вывода можно изменить:
short - используется по умолчанию;
verbose - также, как и short, только выводится намного больше информации;
json - вывод в формате json, одна строка лога в одной строке вывода;
json-pretty - форматированный вывод json для более удобного восприятия;
cat - отображать только сообщения, без метаданных.
Примеры других опций
первая команда
journalctl -u sshd --since today --until tomorrow
Вход какие можно выбрать строки
Accepted логин и IP получим
opened получим логин
Выход
disconnect -не всегда
Disconnected -не всегда
Session closed -не всегда
Received - была перезагрузка
Вторая команда
journalctl -u systemd-logind --since today --until tomorrow
Вход какие можно выбрать строки
New -получим номер сессии
Выход
Removed номер завершении сессии
Login Service или Button - была перезагрузка
Пробуем запросить с Заббикс Сервера
zabbix_get -s 192.168.ххх.ххх -p 10050 -k system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat"]
Если мы получили данные все хорошо.
А если получаем ошибку No journal files were opened due to insufficient permissions.
Это означает у пользователя от которого работает zabbix agent не хватает прав.
Нужно поменять пользователя для работы заббикс агента или дать текущему права доступа.
Так же доступ можно проверить попробовав зайти в папку root
root@ZABBIXSERVER:~# zabbix_get -s 192.168.xxx.xxx -p 10050 -k system.run["cd /root/"] sh: line 0: cd: /root/: Отказано в доступе
Получаем доступ даем права zabbix или читаем ниже как сделать запуск агента от root т.е. дать агенту права работать от root
Я сделал следующим образом добавил пользователя zabbix в группу администраторов следующей командой
usermod -a -G adm zabbix
Проверить можно командой
id zabbix
uid=473(zabbix) gid=449(zabbix) группы=4(adm),19(proc),449(zabbix)
Просмотр прав пользователей и групп
nano /etc/group Далее нужно перезагрузиться shutdown -r now
После проверяем должен появится доступ.
Запуск агент от пользователя root
Показать
Изначально в файле конфигурации заббикс агента прописываем запуск агента от пользователя root
nano /etc/zabbix/zabbix_agentd.conf
Включаем параметр запуск от имени root
AllowRoot=1
ниже #User=zabbix должно быть закомментировано
так же позже я пробовал User=root
Выходим и Сохраняем Y
Перезапускам службу заббикс агента service zabbix_agentd restart
Проверяем появились ли права и от какого пользователя работает агент
У меня все так же агент продолжал работать от пользователя zabbix
Если указать запуск с конфигом
zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
то настройки пользователя цепляются и агент работает от root и доступ есть
У меня на версии агента 3.0.24 уже был конфиг по следующему пути
nano /etc/systemd/system/multi-user.target.wants/zabbix_agentd.service
меняем строки на
[Service]
User=root
Group=root
Так же в файле конфигурации заббикс агента прописываем запуск агента от пользователя root
nano /etc/zabbix/zabbix_agentd.conf
Включаем параметр запуск от имени root
AllowRoot=1
ниже #User=zabbix должно быть закомментировано
так же позже я пробовал User=root
Выходим и Сохраняем Y
Перезапускаем
systemctl daemon-reload
systemctl restart zabbix_agentd
Оф. Запуск Агента из под root
Пробуем по официальной инструкции
nano /etc/systemd/system/zabbix-agent.service.d/override.conf
[Service]
User=root
Group=root
Перезагрузите демонов и перезапустите сервис zabbix-agent.
systemctl daemon-reload
systemctl restart zabbix-agent
Для старого агента этот подход лишь включает повторно функциональность настройки пользователя в файле zabbix_agentd.conf. Поэтому, чтобы запустить Zabbix агента из под пользователя root, вам также необходимо изменить zabbix_agentd.conf и указать опции User=root, как и AllowRoot=1
Проблема:: AllowRoot
Еще
/usr/lib/systemd/system/zabbix-agent.service
меняется здесь
[Unit]
Description=Zabbix Monitor Agent
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/usr/sbin/zabbix_agentd
User=root
PIDFile=/run/zabbix/zabbix_agentd.pid
[Install]
WantedBy=multi-user.target
Решение мне не нравится ибо костыль
правильно будет сделать правки не в в файле /usr/lib/systemd/system/zabbix-agent.service, а в /etc/systemd/system/zabbix-agent.service
Еще вариант касаемо логов дать доступ на просмотр всем
пробуем разрешить
nano /etc/systemd/journald.conf
Storage=persistent
перезапускаем службу
systemctl restart systemd-journald
nano /etc/zabbix/zabbix_agentd.conf
Включаем параметр запуск от имени root
AllowRoot=1
ниже #User=zabbix должно быть закомментировано
так же позже я пробовал User=root
Выходим и Сохраняем Y
Перезапускам службу заббикс агента service zabbix_agentd restart
Проверяем появились ли права и от какого пользователя работает агент
У меня все так же агент продолжал работать от пользователя zabbix
Если указать запуск с конфигом
zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
то настройки пользователя цепляются и агент работает от root и доступ есть
У меня на версии агента 3.0.24 уже был конфиг по следующему пути
nano /etc/systemd/system/multi-user.target.wants/zabbix_agentd.service
меняем строки на
[Service]
User=root
Group=root
Так же в файле конфигурации заббикс агента прописываем запуск агента от пользователя root
nano /etc/zabbix/zabbix_agentd.conf
Включаем параметр запуск от имени root
AllowRoot=1
ниже #User=zabbix должно быть закомментировано
так же позже я пробовал User=root
Выходим и Сохраняем Y
Перезапускаем
systemctl daemon-reload
systemctl restart zabbix_agentd
Оф. Запуск Агента из под root
Пробуем по официальной инструкции
nano /etc/systemd/system/zabbix-agent.service.d/override.conf
[Service]
User=root
Group=root
Перезагрузите демонов и перезапустите сервис zabbix-agent.
systemctl daemon-reload
systemctl restart zabbix-agent
Для старого агента этот подход лишь включает повторно функциональность настройки пользователя в файле zabbix_agentd.conf. Поэтому, чтобы запустить Zabbix агента из под пользователя root, вам также необходимо изменить zabbix_agentd.conf и указать опции User=root, как и AllowRoot=1
Проблема:: AllowRoot
Еще
/usr/lib/systemd/system/zabbix-agent.service
меняется здесь
[Unit]
Description=Zabbix Monitor Agent
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/usr/sbin/zabbix_agentd
User=root
PIDFile=/run/zabbix/zabbix_agentd.pid
[Install]
WantedBy=multi-user.target
Решение мне не нравится ибо костыль
правильно будет сделать правки не в в файле /usr/lib/systemd/system/zabbix-agent.service, а в /etc/systemd/system/zabbix-agent.service
Еще вариант касаемо логов дать доступ на просмотр всем
пробуем разрешить
nano /etc/systemd/journald.conf
Storage=persistent
перезапускаем службу
systemctl restart systemd-journald
На данный момент элемент ключа выглядит следующим образом
system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"]
Запрос данных за сутки | поиск и вывод строк которые содержат (New|Removed|Service) |Вывод последней строки tail -1
Другие варианты ключа которые были
Показать
Элемент system.run[journalctl -u systemd-logind --since today --until tomorrow -o cat]
Предобработка регулярка ^.*(New|Removed).*session.* \0
Регуляркой берет самое верхнее значение выходит что получаем данные всегда одни и те же кто с начала дня первый зашел и все так нас не устраивает
Переделываем элемент без регулярки дописываем выбор строк в элемент и получаем весь нужный лог за весь день
zabbix_get -s 192.168.ххх.ххх -p 10050 -k system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed)'.*session.*|tail -1"]
system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed)'.*session.*|tail -1"]
Тут позже было убрано обязательное содержание строки session и добавлено Service для перезагрузки
Получаем
zabbix_get -s 192.168.ххх.ххх -p 10050 -k system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"]
journalctl -u systemd-logind --since today --until tomorrow -o cat - Запрашиваем журнал за сегодняшний день входов выходов
egrep ^.*'(New|Removed)'.*session.* Оставляем строки только с сессиями входов и выходов
tail -1 Вывод последней строки самого нового значения
Предобработка регулярка ^.*(New|Removed).*session.* \0
Регуляркой берет самое верхнее значение выходит что получаем данные всегда одни и те же кто с начала дня первый зашел и все так нас не устраивает
Переделываем элемент без регулярки дописываем выбор строк в элемент и получаем весь нужный лог за весь день
zabbix_get -s 192.168.ххх.ххх -p 10050 -k system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed)'.*session.*|tail -1"]
system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed)'.*session.*|tail -1"]
Тут позже было убрано обязательное содержание строки session и добавлено Service для перезагрузки
Получаем
zabbix_get -s 192.168.ххх.ххх -p 10050 -k system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"]
journalctl -u systemd-logind --since today --until tomorrow -o cat - Запрашиваем журнал за сегодняшний день входов выходов
egrep ^.*'(New|Removed)'.*session.* Оставляем строки только с сессиями входов и выходов
tail -1 Вывод последней строки самого нового значения
Имя SSH auth {HOST.NAME1} {{ITEM.VALUE}.iregsub("(session .*)", "\1")}
Важность Информационная
Выражение проблемы
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^New session)}=1 and
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].diff(0)}=1
Генерация ОК событий Выражение восстановления
Выражение восстановления
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^New session)}=0 and
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^Removed session)}=1 or
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^.*Login Service)}=1
Режим генерации событий ПРОБЛЕМА Множественный
ОК событие закрывает Все проблемы если значения тегов совпадают
Теги для совпадения session-journalctl{{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}{{ITEM.VALUE}.iregsub("^.*(Login Service).*", "\1")}
Разрешить закрывать вручную V
URL
Описание Пользователь подключился по ssh к серверу
Активировано V
Теги
session-journalctl{{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
{{ITEM.VALUE}.iregsub("^.*(Login Service).*", "\1")}
О созданни триггера
Показать
Простая версия триггера просто реагирует на последнюю строку либо вход или выход (не понимает несколько пользователей не контролирует их по номерам сессии, не знает если была перезагрузка)
Элемент данных system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed)'.*session.*|tail -1"]
Триггер
Имя SSH auth {HOST.NAME1} {{ITEM.VALUE}.iregsub("(session .*)", "\1")}
Выражение {SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed)'.*session.*|tail -1"].str(New,#1)}=1
.str(New,#1)}=1
str (<шаблон>,<сек|#кол-во>) Поиск строки в последнем (самом новом) значении
Поддерживаемые типы значений: str, text, log
Результат:
1 - найдено
0 - в противном случае
Текущий триггер создает на каждую сессию свой триггер при выходе определяет какая сессия вышла и закрывает соответствующий триггер если была перезагрузка закрывает все сессии (минус если элемент запрашивается раз в 1 минуту полусает данные последнюю строку но за эту 1 минуту был выход или вход двух пользователей он этого не поймет либо не закроет открытый триггер или наоборот не закроет)
Имя SSH auth {HOST.NAME1} {{ITEM.VALUE}.iregsub("(session .*)", "\1")} выводит пример
SSH auth Прокси session 821 of user root.
Строка содержит регулярное выражение New session если да 1=1 триггер срабатывает
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^New session)}=1
И
нужно чтобы повторяющаяя проблемма (запрос элемента раз в 1 минуту) присылает 1 и каждый раз срабатывает новый триггер на множественном, если ошибка одна и та еще используем и
diff - Проверка, различаются ли последнее и предыдущее значения.
Если значение неразличаются 0=1 триггер не срабатывает, если значения различаются 1=1 триггер срабатывает
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].diff(0)}=1
Выражение восстановления
Строка несодержит регулярное выражение New session если да 0=0 триггер закрывается
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^New session)}=0
И
Строка содержит регулярное выражение Removed session если да 1=1 триггер закрывается
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^Removed session)}=1
Или
Строка содержит регулярное выражение Login Service если да 1=1 триггер закрывается
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^.*Login Service)}=1
Далее чтоб на каждую сессию создавался новый триггер выбираем Множественный
Для закрытия проблемм не всех разом а по номерам сессии Все проблемы если значения тегов совпадают
Теги для совпадения сравниваем номера открытой и закрываемой сессии и также о перезагрузке
session-journalctl{{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}{{ITEM.VALUE}.iregsub("^.*(Login Service).*", "\1")}
Теги запрос номера сессии все прописываем в ячейку имя так как из значения не берется для сранения
session-journalctl{{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
{{ITEM.VALUE}.iregsub("^.*(Login Service).*", "\1")}
Для тегов 3 варианта
session-journalctl {{ITEM.VALUE}.iregsub("session (.*) of", "\1")} при входе все ок при выходе ничего
session-journalctl {{ITEM.VALUE}.iregsub("session (.*).", "\1")} при входе убирает только точку, оставляет имя пользователя еще, при выходе все ок
session-journalctl {{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")} все ок, не тестированно если в имени пользователя в конце цифры
{EVENT.TAGS} ошибка формируется тег session-journalctl:496, session-journalctl496
{EVENT.RECOVERY.TAGS} востановление
Еще вариант создать зависимый элемет от текущего регуляркой брать нужное значение и сравнивать их
Или в триггере продублировать один и тот же элемент с разными выражениями и сравнивать можно сказать так и сделанно
до diff - Проверка, различаются ли последнее и предыдущее значения. Была попытка сделать закрытия триггеров которые создавались каждую минуту при получении данных через Корреляция событий но в короляцию события не удалось сделать макросом передаче номера сессии для закрытия новых триггеров совпадающих номеров сессий, а по имени без номера он закрывает все в 1 триггер.
Так же возможно нужно будет сформулировать закрытие триггера через n количествой дней, если он повис возможно был выполнен одновременный выход 2х пользователей в 1 минуту.
что то виде сравнения с
date - Текущая дата в формате ГГГГММДД.
dayofmonth - День месяца в диапазоне от 1 до 31
dayofweek - День недели в диапазоне от 1 до 7 (Пн - 1, Вс - 7).
now - Количество секунд начиная с Epoch (00:00:00 UTC, 1 Января, 1970).
time - Текущее время в формате ЧЧММСС.
Элемент данных system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed)'.*session.*|tail -1"]
Триггер
Имя SSH auth {HOST.NAME1} {{ITEM.VALUE}.iregsub("(session .*)", "\1")}
Выражение {SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed)'.*session.*|tail -1"].str(New,#1)}=1
.str(New,#1)}=1
str (<шаблон>,<сек|#кол-во>) Поиск строки в последнем (самом новом) значении
Поддерживаемые типы значений: str, text, log
Результат:
1 - найдено
0 - в противном случае
Текущий триггер создает на каждую сессию свой триггер при выходе определяет какая сессия вышла и закрывает соответствующий триггер если была перезагрузка закрывает все сессии (минус если элемент запрашивается раз в 1 минуту полусает данные последнюю строку но за эту 1 минуту был выход или вход двух пользователей он этого не поймет либо не закроет открытый триггер или наоборот не закроет)
Имя SSH auth {HOST.NAME1} {{ITEM.VALUE}.iregsub("(session .*)", "\1")} выводит пример
SSH auth Прокси session 821 of user root.
Строка содержит регулярное выражение New session если да 1=1 триггер срабатывает
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^New session)}=1
И
нужно чтобы повторяющаяя проблемма (запрос элемента раз в 1 минуту) присылает 1 и каждый раз срабатывает новый триггер на множественном, если ошибка одна и та еще используем и
diff - Проверка, различаются ли последнее и предыдущее значения.
Если значение неразличаются 0=1 триггер не срабатывает, если значения различаются 1=1 триггер срабатывает
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].diff(0)}=1
Выражение восстановления
Строка несодержит регулярное выражение New session если да 0=0 триггер закрывается
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^New session)}=0
И
Строка содержит регулярное выражение Removed session если да 1=1 триггер закрывается
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^Removed session)}=1
Или
Строка содержит регулярное выражение Login Service если да 1=1 триггер закрывается
{SSH Auth journalctl Alt Linux:system.run["journalctl -u systemd-logind --since today --until tomorrow -o cat|egrep ^.*'(New|Removed|Service)'.*|tail -1"].iregexp(^.*Login Service)}=1
Далее чтоб на каждую сессию создавался новый триггер выбираем Множественный
Для закрытия проблемм не всех разом а по номерам сессии Все проблемы если значения тегов совпадают
Теги для совпадения сравниваем номера открытой и закрываемой сессии и также о перезагрузке
session-journalctl{{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}{{ITEM.VALUE}.iregsub("^.*(Login Service).*", "\1")}
Теги запрос номера сессии все прописываем в ячейку имя так как из значения не берется для сранения
session-journalctl{{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
{{ITEM.VALUE}.iregsub("^.*(Login Service).*", "\1")}
Для тегов 3 варианта
session-journalctl {{ITEM.VALUE}.iregsub("session (.*) of", "\1")} при входе все ок при выходе ничего
session-journalctl {{ITEM.VALUE}.iregsub("session (.*).", "\1")} при входе убирает только точку, оставляет имя пользователя еще, при выходе все ок
session-journalctl {{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")} все ок, не тестированно если в имени пользователя в конце цифры
{EVENT.TAGS} ошибка формируется тег session-journalctl:496, session-journalctl496
{EVENT.RECOVERY.TAGS} востановление
Еще вариант создать зависимый элемет от текущего регуляркой брать нужное значение и сравнивать их
Или в триггере продублировать один и тот же элемент с разными выражениями и сравнивать можно сказать так и сделанно
до diff - Проверка, различаются ли последнее и предыдущее значения. Была попытка сделать закрытия триггеров которые создавались каждую минуту при получении данных через Корреляция событий но в короляцию события не удалось сделать макросом передаче номера сессии для закрытия новых триггеров совпадающих номеров сессий, а по имени без номера он закрывает все в 1 триггер.
Так же возможно нужно будет сформулировать закрытие триггера через n количествой дней, если он повис возможно был выполнен одновременный выход 2х пользователей в 1 минуту.
что то виде сравнения с
date - Текущая дата в формате ГГГГММДД.
dayofmonth - День месяца в диапазоне от 1 до 31
dayofweek - День недели в диапазоне от 1 до 7 (Пн - 1, Вс - 7).
now - Количество секунд начиная с Epoch (00:00:00 UTC, 1 Января, 1970).
time - Текущее время в формате ЧЧММСС.
Логи после перзагрузки и выключения ищем стоку по которой сделать сброс триггеров входов
Показать
journalctl -u sshd --since today --until tomorrow
-- Logs begin at Wed 2020-03-04 07:57:32 MSK, end at Thu 2020-05-28 16:41:11 MSK. --
May 28 07:54:57 ALT58 systemd[1]: Starting OpenSSH server daemon...
May 28 07:54:58 ALT58 systemd[1]: Started OpenSSH server daemon.
May 28 07:54:58 ALT58 sshd[914]: Server listening on 0.0.0.0 port 22.
May 28 07:54:58 ALT58 sshd[914]: Server listening on :: port 22.
ВХОД В УЧЕТКУ
May 28 08:50:14 ALT58 sshd[8441]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
May 28 08:50:14 ALT58 sshd[8441]: Accepted password for ROOT USER root from 192.168.131.95 port 1713 ssh2
May 28 08:50:14 ALT58 sshd[8441]: pam_tcb(sshd:session): Session opened for root by (uid=0)
May 28 16:15:05 ALT58 systemd[1]: Stopping OpenSSH server daemon...
May 28 16:15:06 ALT58 sshd[914]: Received signal 15; terminating.
May 28 16:15:11 ALT58 systemd[1]: Stopped OpenSSH server daemon.
-- Reboot --
May 28 16:18:38 ALT58 systemd[1]: Starting OpenSSH server daemon...
May 28 16:18:40 ALT58 systemd[1]: Started OpenSSH server daemon.
May 28 16:18:40 ALT58 sshd[1007]: Server listening on 0.0.0.0 port 22.
May 28 16:18:40 ALT58 sshd[1007]: Server listening on :: port 22.
ВХОД В УЧЕТКУ
May 28 16:20:02 ALT58 sshd[6428]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
May 28 16:20:02 ALT58 sshd[6428]: Accepted password for ROOT USER root from 192.168.131.95 port 4917 ssh2
May 28 16:20:02 ALT58 sshd[6428]: pam_tcb(sshd:session): Session opened for root by (uid=0)
May 28 16:27:14 ALT58 systemd[1]: Stopping OpenSSH server daemon...
May 28 16:27:15 ALT58 sshd[1007]: Received signal 15; terminating.
May 28 16:27:17 ALT58 systemd[1]: Stopped OpenSSH server daemon.
-- Reboot --
May 28 16:28:12 ALT58 systemd[1]: Starting OpenSSH server daemon...
May 28 16:28:14 ALT58 systemd[1]: Started OpenSSH server daemon.
May 28 16:28:14 ALT58 sshd[960]: Server listening on 0.0.0.0 port 22.
May 28 16:28:14 ALT58 sshd[960]: Server listening on :: port 22.
ВХОД В УЧЕТКУ
May 28 16:35:17 ALT58 sshd[7303]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
May 28 16:41:04 ALT58 sshd[7554]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
May 28 16:41:04 ALT58 sshd[7554]: Accepted password for ROOT USER root from 192.168.131.95 port 3693 ssh2
May 28 16:41:04 ALT58 sshd[7554]: pam_tcb(sshd:session): Session opened for root by (uid=0)
journalctl -u systemd-logind --since today --until tomorrow
-- Reboot --
May 28 16:18:34 ALT58 systemd[1]: Starting Login Service...
May 28 16:18:34 ALT58 systemd[1]: Started Login Service.
May 28 16:18:34 ALT58 systemd-logind[536]: New seat seat0.
May 28 16:18:34 ALT58 systemd-logind[536]: Watching system buttons on /dev/input/event2 (Power Button)
May 28 16:18:34 ALT58 systemd-logind[536]: Watching system buttons on /dev/input/event1 (Power Button)
May 28 16:18:57 ALT58 systemd-logind[536]: New session c1 of user _ldm.
May 28 16:19:20 ALT58 systemd-logind[536]: New session 6 of user user1.
May 28 16:20:02 ALT58 systemd-logind[536]: New session 10 of user root.
May 28 16:27:05 ALT58 systemd-logind[536]: System is rebooting.
May 28 16:27:08 ALT58 systemd-logind[536]: Removed session c1.
May 28 16:27:09 ALT58 systemd-logind[536]: Removed session 10.
May 28 16:27:13 ALT58 systemd-logind[536]: Removed session 6.
May 28 16:27:17 ALT58 systemd[1]: Stopping Login Service...
May 28 16:27:17 ALT58 systemd[1]: Stopped Login Service.
-- Reboot --
May 28 16:28:06 ALT58 systemd[1]: Starting Login Service...
May 28 16:28:09 ALT58 systemd[1]: Started Login Service.
May 28 16:28:09 ALT58 systemd-logind[525]: New seat seat0.
May 28 16:28:09 ALT58 systemd-logind[525]: Watching system buttons on /dev/input/event2 (Power Button)
May 28 16:28:09 ALT58 systemd-logind[525]: Watching system buttons on /dev/input/event1 (Power Button)
May 28 16:28:30 ALT58 systemd-logind[525]: New session c1 of user _ldm.
ВХОД В УЧЕТКУ
May 28 16:32:24 ALT58 systemd-logind[525]: New session 12 of user user1.
May 28 16:35:17 ALT58 systemd-logind[525]: New session 20 of user root.
-- Logs begin at Wed 2020-03-04 07:57:32 MSK, end at Thu 2020-05-28 16:41:11 MSK. --
May 28 07:54:57 ALT58 systemd[1]: Starting OpenSSH server daemon...
May 28 07:54:58 ALT58 systemd[1]: Started OpenSSH server daemon.
May 28 07:54:58 ALT58 sshd[914]: Server listening on 0.0.0.0 port 22.
May 28 07:54:58 ALT58 sshd[914]: Server listening on :: port 22.
ВХОД В УЧЕТКУ
May 28 08:50:14 ALT58 sshd[8441]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
May 28 08:50:14 ALT58 sshd[8441]: Accepted password for ROOT USER root from 192.168.131.95 port 1713 ssh2
May 28 08:50:14 ALT58 sshd[8441]: pam_tcb(sshd:session): Session opened for root by (uid=0)
May 28 16:15:05 ALT58 systemd[1]: Stopping OpenSSH server daemon...
May 28 16:15:06 ALT58 sshd[914]: Received signal 15; terminating.
May 28 16:15:11 ALT58 systemd[1]: Stopped OpenSSH server daemon.
-- Reboot --
May 28 16:18:38 ALT58 systemd[1]: Starting OpenSSH server daemon...
May 28 16:18:40 ALT58 systemd[1]: Started OpenSSH server daemon.
May 28 16:18:40 ALT58 sshd[1007]: Server listening on 0.0.0.0 port 22.
May 28 16:18:40 ALT58 sshd[1007]: Server listening on :: port 22.
ВХОД В УЧЕТКУ
May 28 16:20:02 ALT58 sshd[6428]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
May 28 16:20:02 ALT58 sshd[6428]: Accepted password for ROOT USER root from 192.168.131.95 port 4917 ssh2
May 28 16:20:02 ALT58 sshd[6428]: pam_tcb(sshd:session): Session opened for root by (uid=0)
May 28 16:27:14 ALT58 systemd[1]: Stopping OpenSSH server daemon...
May 28 16:27:15 ALT58 sshd[1007]: Received signal 15; terminating.
May 28 16:27:17 ALT58 systemd[1]: Stopped OpenSSH server daemon.
-- Reboot --
May 28 16:28:12 ALT58 systemd[1]: Starting OpenSSH server daemon...
May 28 16:28:14 ALT58 systemd[1]: Started OpenSSH server daemon.
May 28 16:28:14 ALT58 sshd[960]: Server listening on 0.0.0.0 port 22.
May 28 16:28:14 ALT58 sshd[960]: Server listening on :: port 22.
ВХОД В УЧЕТКУ
May 28 16:35:17 ALT58 sshd[7303]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
May 28 16:41:04 ALT58 sshd[7554]: pam_tcb(sshd:auth): Authentication passed for root from (uid=0)
May 28 16:41:04 ALT58 sshd[7554]: Accepted password for ROOT USER root from 192.168.131.95 port 3693 ssh2
May 28 16:41:04 ALT58 sshd[7554]: pam_tcb(sshd:session): Session opened for root by (uid=0)
journalctl -u systemd-logind --since today --until tomorrow
-- Reboot --
May 28 16:18:34 ALT58 systemd[1]: Starting Login Service...
May 28 16:18:34 ALT58 systemd[1]: Started Login Service.
May 28 16:18:34 ALT58 systemd-logind[536]: New seat seat0.
May 28 16:18:34 ALT58 systemd-logind[536]: Watching system buttons on /dev/input/event2 (Power Button)
May 28 16:18:34 ALT58 systemd-logind[536]: Watching system buttons on /dev/input/event1 (Power Button)
May 28 16:18:57 ALT58 systemd-logind[536]: New session c1 of user _ldm.
May 28 16:19:20 ALT58 systemd-logind[536]: New session 6 of user user1.
May 28 16:20:02 ALT58 systemd-logind[536]: New session 10 of user root.
May 28 16:27:05 ALT58 systemd-logind[536]: System is rebooting.
May 28 16:27:08 ALT58 systemd-logind[536]: Removed session c1.
May 28 16:27:09 ALT58 systemd-logind[536]: Removed session 10.
May 28 16:27:13 ALT58 systemd-logind[536]: Removed session 6.
May 28 16:27:17 ALT58 systemd[1]: Stopping Login Service...
May 28 16:27:17 ALT58 systemd[1]: Stopped Login Service.
-- Reboot --
May 28 16:28:06 ALT58 systemd[1]: Starting Login Service...
May 28 16:28:09 ALT58 systemd[1]: Started Login Service.
May 28 16:28:09 ALT58 systemd-logind[525]: New seat seat0.
May 28 16:28:09 ALT58 systemd-logind[525]: Watching system buttons on /dev/input/event2 (Power Button)
May 28 16:28:09 ALT58 systemd-logind[525]: Watching system buttons on /dev/input/event1 (Power Button)
May 28 16:28:30 ALT58 systemd-logind[525]: New session c1 of user _ldm.
ВХОД В УЧЕТКУ
May 28 16:32:24 ALT58 systemd-logind[525]: New session 12 of user user1.
May 28 16:35:17 ALT58 systemd-logind[525]: New session 20 of user root.
Вопрос по Корреляции и тегам в телеграм
Показать
Добрый день! Подскажите по тегам и корреляции
Получаю командой в ключе входы и выходы пользователей
формата
Removed session 1.
New session 6 of user root.
Removed session 6.
New session 8 of user root.
Теги в триггере
Имя session-journalctl Значение {{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
Корреляция
Для: Все проблемы если значения тегов совпадают > Теги для совпадения
тут я так понял совпадение берется только из Имени, значение тут не сравнивается ?
Сделал тег в триггере полностью в ячейке Имя session-journalctl{{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
И точно такой же сделал Теги для совпадения session-journalctl{{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
Вроде все хорошо триггеры закрываются если номер сессии совпадает
Чтоб для разных сессий был разный триггер проблема множественный
создается новый триггер при каждом опросе элементов
Начал настраивать корреляцию
Тег старого события session-journalctl содержит {EVENT.TAGS}
Закрыть новое событие
Как правильно передать макрос, значения чтоб он только закрывал одинаковые триггеры сессии?
{EVENT.TAGS} формируется как session-journalctl:496, session-journalctl496
Для значения содержит пробовал указать {{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
застрял на данном этапе
Сделал вместо Корреляции, diff в триггере решение
Получаю командой в ключе входы и выходы пользователей
формата
Removed session 1.
New session 6 of user root.
Removed session 6.
New session 8 of user root.
Теги в триггере
Имя session-journalctl Значение {{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
Корреляция
Для: Все проблемы если значения тегов совпадают > Теги для совпадения
тут я так понял совпадение берется только из Имени, значение тут не сравнивается ?
Сделал тег в триггере полностью в ячейке Имя session-journalctl{{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
И точно такой же сделал Теги для совпадения session-journalctl{{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
Вроде все хорошо триггеры закрываются если номер сессии совпадает
Чтоб для разных сессий был разный триггер проблема множественный
создается новый триггер при каждом опросе элементов
Начал настраивать корреляцию
Тег старого события session-journalctl содержит {EVENT.TAGS}
Закрыть новое событие
Как правильно передать макрос, значения чтоб он только закрывал одинаковые триггеры сессии?
{EVENT.TAGS} формируется как session-journalctl:496, session-journalctl496
Для значения содержит пробовал указать {{ITEM.VALUE}.iregsub("session ([0-9]+)( of|.)", "\1")}
застрял на данном этапе
Сделал вместо Корреляции, diff в триггере решение