Linux 安全加固:通过 Syslog 实现异常操作审计

冷漠man

冷漠man

2026-07-09

506人浏览

原创

单纯开启syslog不能自动完成异常操作审计,关键在于与auditd协同构成证据链:聚焦auth/authpriv设施捕获权限行为,显式配置sudo日志、启用auditd记录内核级调用,并通过rsyslog_syslogprotocol23format实现结构化日志与三层日志(syslog/auditd/journald)关联。

linux 安全加固:通过 syslog 实现异常操作审计

单纯开启 Syslog 不能自动完成异常操作审计,关键在于让日志具备可追溯性、上下文完整性和机器可读性。它不是替代 auditd 的方案,而是与之协同构成证据链的重要一环。

聚焦 auth 和 authpriv 设施,捕获真实权限行为

默认的 /var/log/auth.log(或 /var/log/secure)只记录 PAM 登录事件,容易漏掉 sudo、su、setuid 程序调用等关键动作。必须主动强化配置:

  • 在 rsyslog 中显式捕获 sudo 日志:添加规则 local2.* /var/log/sudo.log,并在 /etc/sudoers 中启用 Defaults logfile="/var/log/sudo.log"
  • 确保 auditd 启用并协同工作:Syslog 不记录 execve、openat 等内核级系统调用,需靠 auditd 捕获,再通过 audispd 插件将日志转发至 rsyslog 的 local0 设施
  • 禁用模糊记录:避免出现 “user unknown” 或 “invalid user” 类泛化条目;强制 SSH 等服务记录完整用户名、源 IP、TTY 和时间戳

结构化日志格式 + 关键字段提取

原始 Syslog 行是半结构化文本,人工排查效率低。提升质量的第一步是统一字段表达:

PyCharm 2026.2.0.1 Linux版
PyCharm 2026.2.0.1 Linux版

PyCharm 2026.2.0.1 Linux版提供 JetBrains 官方 2026.2.0.1 版本安装包,适合需要指定 PyCharm 版本进行 Python 项目开发、运行和调试的用户。

下载
  • 启用 rsyslog 的 RSYSLOG_SyslogProtocol23Format 模式,使日志符合 RFC5424,自带 structured-data 字段(如 [origin ip="10.1.2.3"]
  • 对 auth.log 做预处理:用 awk 或 logrotate 配合 script 提取并重写关键字段,例如将 "Failed password for invalid user alice from 192.168.5.22" 标准化为 event=login_fail user=alice src_ip=192.168.5.22 reason=invalid_user
  • 为每条日志打上唯一 trace_id(如 UUID 或 session ID),便于串联一次登录后的全部命令执行链

设置可验证的审计基线与偏差告警

“有日志”不等于“能审计”,必须定义什么是“正常”,才能识别“异常”:

  • 建立用户行为基线:统计各账号每日平均登录次数、常用登录时段、高频执行命令(如运维账号常跑 ansible,开发账号极少用 sudo)
  • 配置 rsyslog + imfile + omelasticsearch 实时写入 ELK,用 Kibana 建立 watch:当某用户在非工作时间触发 3 次 sudo su - root,或同一 IP 在 5 分钟内尝试 5 个不同账号登录,立即触发告警
  • 保留至少 90 天的完整日志,并启用 logrotate 的 create 0600 root root 权限控制,防止日志被低权限进程篡改或覆盖

与 auditd 和 systemd-journald 形成三层证据链

Syslog 是审计证据链中的一环,不是全部。高质量内部权限审计依赖三类日志:

  • Syslog 层:记录服务级行为(SSH 登录、sudo 执行、PAM 认证结果)
  • auditd 层:记录内核级细粒度操作(execve 调用、文件 openat、capset 变更)
  • journald 层:记录 systemd 单元生命周期、环境变量、命令行参数,补充上下文

三者通过时间戳、PID、UID、session ID 关联,形成不可抵赖的操作证据链。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

linux

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

2671

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

1649

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

1297

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

2654

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

2421

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

1659

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

1254

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

1423

6

linux查找文件命令
linux查找文件命令

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.31

210

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
phpMyAdmin 安装文档
phpMyAdmin 安装文档

共0课时 | 0人学习

Apifox下载与安装手册
Apifox下载与安装手册

共0课时 | 0人学习