Wer*_*eii 5 linux logging manjaro auditd
我希望所有审计日志都只在它自己的日志文件中,并保持我的 journalctl 视图不受大多数时间由我自己的操作(单用户/个人计算机)生成的事件的污染。
我已经找到了如何在arch wiki上完全禁用 auditd 或禁用审计事件的日志记录(?),然后我查看了auditd.conf实际log_file填写选项的位置,但它指向的文件不存在,一切正常只需登录日记。
# /etc/audit/auditd.conf
local_events = yes
write_logs = yes
log_file = /var/log/audit/audit.log
log_group = root
log_format = RAW
flush = INCREMENTAL_ASYNC
freq = 50
max_log_file = 8
num_logs = 5
priority_boost = 4
disp_qos = lossy
dispatcher = /usr/bin/audispd
name_format = NONE
##name = mydomain
max_log_file_action = ROTATE
space_left = 75
space_left_action = SYSLOG
verify_email = yes
action_mail_acct = root
# ...
Run Code Online (Sandbox Code Playgroud)
看来 systemd-journald-audit 优先于审计事件,我的第一个想法是使用 rsyslog 规则,但似乎 Manjaro 上没有使用 rsyslog。
那么,我怎样才能停止在 journal[ctl] 中看到审计事件并让它们只登录到一个特定的文件中呢?
我做了功课并将所有内容都记录到一个文件中,而不是记录到 syslog/journal 中。从表面上看,默认情况下,systemd 设置它自己的内核审计事件监听器,并将它们记录到 syslog/journal 中。另一种方法是使用auditd读取这些事件并将它们记录到可配置的日志文件中。
systemctl stop systemd-journald-audit.socket
systemctl disable systemd-journald-audit.socket
# masking will prevent starting by other services
# 'systemctl unmask' to reverse
systemctl mask systemd-journald-audit.socket
Run Code Online (Sandbox Code Playgroud)
在您重新启动之前,审核事件可能仍会记录到日志中。
auditd安装或确保auditd安装了软件包,根据您的发行版,auditManjaro可能会以不同的方式命名。
的位置auditd.conf似乎不同(在线联机帮助页的位置不同),请参阅您的man auditd.conf.
以下配置应该可以解决问题,确保/var/log/audit/存在。
# /etc/audit/auditd.conf
local_events = yes
write_logs = yes
log_file = /var/log/audit/audit.log
log_group = root
log_format = RAW
flush = INCREMENTAL_ASYNC
freq = 5 # after how many messages to explicitly flush
max_log_file = 8 # size in MB per one log file
num_logs = 5 # keep n amount of rotated logs
# ... truncated
Run Code Online (Sandbox Code Playgroud)
这个文件已经存在于我的系统上,有一些合理的默认值,但这些似乎是最重要的日志选项。如果它不存在,您应该查阅您的联机帮助页,其他可能重要的选项之一是dispatcher=,因为如果您正在使用审核规则 ( audispd, /etc/audit/rules.d/)。
auditd审计包附带了它自己的 systemd 单元文件,位于
/usr/lib/systemd/system/auditd.service. 服务文件中有一些注释,请务必阅读以检查它们是否适用。
将该文件复制到/etc/systemd/system/auditd.service,然后发出
# /etc/audit/auditd.conf
local_events = yes
write_logs = yes
log_file = /var/log/audit/audit.log
log_group = root
log_format = RAW
flush = INCREMENTAL_ASYNC
freq = 5 # after how many messages to explicitly flush
max_log_file = 8 # size in MB per one log file
num_logs = 5 # keep n amount of rotated logs
# ... truncated
Run Code Online (Sandbox Code Playgroud)
这一切都适用于我的系统,即5.9.10-1 kernel带有systemd 246和 的Manjaro audit version 2.8.5。用于将审计事件记录到 syslog/journal 的 systemd 单元可能命名不同,并且审计单元文件的存在及其配置路径在其他发行版中可能不同。
| 归档时间: |
|
| 查看次数: |
1258 次 |
| 最近记录: |