Фильтрация sudo сообщений в логах

Задача: каждые несколько секунд выполняется команда через sudo, и /var/log/messages забивается строками вроде:

Aug 24 00:16:41 golf sudo:      ksu : TTY=unknown ; PWD=/home/ksu ; USER=root ; COMMAND=/usr/sbin/hddtemp /dev/sda -q
Aug 24 00:16:41 golf sudo: pam_unix(sudo:session): session opened for user root by (uid=1000)

Решение:

Первая строчка убирается добавлением в /etc/sudoers:

Defaults !syslog

Вторая строка фильтруется через syslog-ng:

# vim /etc/syslog-ng/syslog-ng.conf

# Определяем destination для логов
destination authlog { file("/var/log/auth.log"); };

# Фильтр логов событий авторизации
filter f_authpriv { facility(auth, authpriv); };

# Фильтр логов с приоритетом info
filter f_info { level(info); };

# Отрицание предыдущих фильтров
filter f_main { not level(info) or not facility(auth, authpriv); };

# Логи событий авторизации с info в отдельный файл
log { source(src); filter(f_authpriv); filter(f_info); destination(authlog); };

# Всё остальное — в /var/log/messages и консоль
log { source(src); filter(f_main); destination(messages); };
log { source(src); filter(f_main); destination(console_all); };

Или без изменения /etc/sudoers:

# Фильтр, отбрасывающий все сообщения от sudo
filter f_main { not program("sudo"); };
log { source(src); filter(f_main); destination(messages); };
log { source(src); filter(f_main); destination(console_all); };

Примеры фильтрации других демонов:

destination messages { file("/var/log/messages"); };
destination console_all { file("/dev/tty12"); };
destination cron { file("/var/log/cron.log"); };
destination pptp { file("/var/log/pptp.log"); };
destination sshd { file("/var/log/sshd.log"); };

filter f_cron { program("cron"); };
filter f_pptp { program("pptp") or program("pppd"); };
filter f_sshd { program("sshd"); };
filter f_main { not program("cron") and not program("pppd")
and not program("pptp") and not program("sshd"); };

log { source(src); filter(f_cron); destination(cron); };
log { source(src); filter(f_pptp); destination(pptp); };
log { source(src); filter(f_sshd); destination(sshd); };
log { source(src); filter(f_main); destination(messages); };
log { source(src); destination(console_all); };