
ОС: CentOS 7
Я пытаюсь выяснить, как kaudit
регистрируются события аудита () /var/log/messages
.
Я включил audit=1
в grub, что означает, что при загрузке сервера аудит ядра включен. Это желаемое состояние для конкретной системы, и отключение аудита не входит в уравнение. Моя audit
конфигурация следующая
# auditctl -s
enabled 1
failure 1
pid 0
rate_limit 0
backlog_limit 64
lost 7452643
backlog 0
loginuid_immutable 0 unlocked
Auditd
с другой стороны, отключен/остановлен, поскольку я использую другой инструмент для сбора/использования событий, сгенерированных аудитом ядра.
Моя проблема в том, что я заметил, что эти события аудита регистрируются /var/log/messages
:
2021-11-25T00:35:09.490607-08:00 myserver.local kernel: [4272426.343673] audit: type=1110 audit(1637829309.455:7426414): pid=2361 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:setcred grantors=pam_env,pam_unix acct="root" exe="/usr/bin/sudo" hostname=? addr=? terminal=? res=success
Я пытаюсь выяснить, как попадают эти сообщения, /var/log/messages
и единственное, в чем я уверен, так это в том, что это сделает syslog.
На самом деле, я пытаюсь отследить, как события аудита попадают в , rsyslog
и пока мне это не удалось. У меня есть предположение, что journald
извлечение этих событий аудита, которое в свою очередь пересылает их в rsyslog
, однако я не могу это прояснить.
Journald
можно установить соединение netlink socket
с ядром для получения событий аудита, однако я не вижу такого сокета в systemd.
# systemctl list-units --type=socket
UNIT LOAD ACTIVE SUB DESCRIPTION
dbus.socket loaded active running D-Bus System Message Bus Socket
dm-event.socket loaded active listening Device-mapper event daemon FIFOs
iscsid.socket loaded active running Open-iSCSI iscsid Socket
iscsiuio.socket loaded active listening Open-iSCSI iscsiuio Socket
lvm2-lvmetad.socket loaded active listening LVM2 metadata daemon socket
lvm2-lvmpolld.socket loaded active listening LVM2 poll daemon socket
nscd.socket loaded active running Name Service Cache Daemon Socket
rpcbind.socket loaded active running RPCbind Server Activation Socket
systemd-initctl.socket loaded active listening /dev/initctl Compatibility Named Pipe
systemd-journald.socket loaded active running Journal Socket
systemd-shutdownd.socket loaded active listening Delayed Shutdown Socket
systemd-udevd-control.socket loaded active running udev Control Socket
systemd-udevd-kernel.socket loaded active running udev Kernel Socket
# systemctl status systemd-journald-audit.socket
Unit systemd-journald-audit.socket could not be found.
Теперь самое странное, что если я перечислю netlink
сокеты в системе, я увижу один, связанный с audit
и systemd
:
# ss -a -f netlink|grep audit
UNCONN 0 0 audit:systemd/1 *
UNCONN 0 0 audit:sudo/3144 *
UNCONN 0 0 audit:kernel *
UNCONN 0 0 audit:sudo/14889 *
Есть идеи, как эти журналы попадают в syslog и что/как audit:systemd
создает этот сокет?
И самое главное, как прекратить journald
сбор аудиторских событий?