не регистрировать события cron в auth.log

не регистрировать события cron в auth.log

В моем случае для входа в систему /etc/rsyslog.confесть следующая строка :auth/var/log/auth.log

auth,authpriv.*           /var/log/auth.log

но файл переполнен журналами cron, например такими:

CRON[18620]:  pam_unix(cron:session): session opened for user root by (uid=0)
CRON[18620]:  pam_unix(cron:session): session closed for user root

Я хотел бы избавиться от журналов cron и записывать в этот файл только реальные события "auth". Под этим я подразумеваю, что я хочу видеть, какие пользователи вошли в систему или сделали su -.

Как мне этого добиться?

решение1

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

Кроме того, вы можете отфильтровать сообщения из процесса CRON с помощью:

#Continue logging CRON to syslog
*.*;auth,authpriv.none          -/var/log/syslog
#Filter events from the process CRON out of auth.log
:programname, isequal, "CRON" ~
auth,authpriv.*                 /var/log/auth.log

Если вы не хотите, чтобы регистрировались какие-либо события CRON, вы можете поместить строку фильтра первой в файле rsyslog.conf.

решение2

Я думаю, это то, что вы ищете:

:msg, contains, "pam_unix(cron:session)" ~
auth,authpriv.* /var/log/auth.log

первая строка соответствует событиям аутентификации cron и удаляет их. Вторая строка затем регистрирует согласно вашему правилу, за вычетом ранее удаленных строк.

решение3

Для меня это было причиной плохого поведения:https://languor.us/cron-pam-unix-cron-session-session-opened-closed-user-root-uid0

как указано здесь:https://askubuntu.com/a/280255/366528 добавив эту одну строку

session [success=1 default=ignore] pam_succeed_if.so service in cron quiet use_uid

удалил эти фиктивные записи cron

Связанный контент