首页/安全/取证与溯源速查/facility 与 severity 筛选策略
Linux 取证135 条

facility 与 severity 筛选策略

rsyslog 按 facility(authpriv、cron、kern 等)与 severity 分流日志文件,理解映射关系才能解释为什么某类事件出现在某个文件。

取证与溯源速查安全更新于 2026-10-13

facility 与 severity 的分流逻辑

rsyslog 按 facility(消息来源类别)与 severity(严重程度)把日志分流到不同文件,例如认证相关的 authpriv 写入 secure 或 auth.log,计划任务写入 cron,内核消息写入 kern.log。理解这层映射才能解释为什么某类事件出现在某个文件里,也才能解释为什么某个文件里什么都没有。规则中的排除写法会让对应日志在特定目标中缺失,这一点在取证时需要专门记录,否则会把规则造成的缺失误判为记录被清除。

基本信息

facilityauthpriv 认证、cron 计划任务、kern 内核、user 用户进程
severity从 emerg 到 debug 共八级,可设置阈值
规则示例authpriv.* /var/log/secure
注意规则中可能出现排除写法,导致某类日志缺失

典型使用场景

  • 解释某类事件的日志为什么落在特定文件中
  • 判断日志文件缺失是配置分流还是记录被清除
  • 核对规则改动时间与日志分布变化的关系
  • 确认内核与认证日志是否被转发到同一目标
  • 为日志采集清单提供依据,避免漏采整个类别

查看分流规则

查看分流规则
grep -vE '^\s*#|^\s*$' /etc/rsyslog.conf | head -20   # 主配置中的有效规则
ls /etc/rsyslog.d/                                    # 附加规则文件列表
grep -RIn 'authpriv\|cron\.\|kern' /etc/rsyslog.d/ 2>/dev/null | head -20
rsyslogd -N1 2>&1 | tail -5                           # 校验配置语法并查看加载情况
ls -l /var/log/secure /var/log/cron /var/log/messages 2>/dev/null   # 目标文件实际存在情况

facility 对照

facility覆盖范围常见落地文件
authpriv认证与授权类消息secure(RHEL 系)、auth.log(Debian 系)
cron计划任务执行消息cron 或 syslog 中的 cron 条目
kern内核消息messages、kern.log,也进内核环缓冲
user普通用户进程消息messages 或 syslog
同一事件可能同时被多条规则写入不同文件,统计事件数量时要注意去重,否则会出现同一事件被计两次的情况。
severity 阈值设置过高会把低级别事件直接丢弃,日志中看不到某类记录时先检查规则里的阈值,再考虑记录是否被人为清除。
修改日志分流规则会影响后续所有记录的落点,取证阶段如需调整应先留存当前配置与目标文件的现状。
本地分流与远程转发可以并存:同一事件既写入本地文件,也可能被转发到集中服务器,两侧的时间戳与字段并不完全一致,交叉验证前先确认转发链路的完整性。

易错点

  • 把规则造成的日志缺失误判为记录被清除
  • 统计时未去重,同一事件被多个文件重复计数
  • 忽略 severity 阈值,低级别事件被规则丢弃却被当成未发生
  • 只查看主配置文件,未检查 rsyslog.d 下的附加规则

数据来源与参考

  • rsyslog 官方文档(facility 与 selector)
  • RFC 5424(severity 定义)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌