当前位置: 首页 > article >正文

auditd:Linux 系统审计日志,记录谁动了你的服务器

auditdLinux 系统审计日志记录谁动了你的服务器服务器被入侵后管理员面临的第一个问题往往不是怎么修复而是到底发生了什么——攻击者登录了哪个账号修改了哪些文件执行了什么命令没有完善的审计日志这些问题无从回答。auditdLinux Audit Daemon是 Linux 内核内置的审计子系统的用户空间组件它在内核级别拦截系统调用记录文件访问、用户登录、权限提升、命令执行等关键事件生成不可篡改的审计日志是服务器安全合规PCI DSS、等保、CIS Benchmark的核心组件。本文将从安装配置到规则编写带你全面掌握auditd的使用让谁动了你的服务器这个问题有据可查。适用场景与服务器配置auditd适用于所有需要安全合规或事后审计的场景生产 Web 服务器监控 Web 目录文件变更及时发现 Webshell 植入。数据库服务器监控配置文件、敏感目录的访问记录 DBA 操作。跳板机 / 堡垒机记录所有用户的登录和命令执行满足操作审计要求。合规场景满足 PCI DSS、ISO 27001、等保 2.0 等对操作日志的要求。auditd对机型没有特殊要求资源占用极低任何机型均可部署。推荐在雨云服务器 rainyun-com上部署该机型配置均衡适合同时运行业务服务和审计系统日志可存储在系统盘或挂载的20GB 数据盘上。注册填码2026off领 5 折低成本搭建合规审计环境。安装Debian / Ubuntuaptupdateaptinstall-yauditd audispd-pluginsCentOS / Rocky Linux / AlmaLinuxdnfinstall-yaudit audit-libs安装完成后启动并设置开机自启systemctlenable--nowauditd systemctl status auditd验证审计子系统状态auditctl-s输出应包含enabled 1表示审计已启用。核心概念审计规则类型auditd 的规则分为三类控制规则Control rules修改审计系统行为如设置缓冲区大小、锁定规则集。文件系统规则Filesystem watch rules-w监控指定文件或目录的访问。系统调用规则Syscall rules-a监控特定系统调用支持按用户、进程、参数过滤。关键字段解析查看审计日志时常见字段含义字段含义type事件类型SYSCALL、PATH、USER_AUTH 等uid真实用户 IDauid审计用户 ID登录时的原始用户即使 sudo 后也保留exe执行的程序路径key规则标签用于搜索过滤success操作是否成功yes/nocomm进程名称hostname主机名addr远程 IP登录事件查看当前规则# 列出当前加载的所有规则auditctl-l# 查看审计系统状态auditctl-s实时查看审计日志# 原始日志位置tail-f/var/log/audit/audit.log# 结构化搜索推荐ausearch-mUSER_LOGIN-i# 生成报告aureport--summary实战配置规则文件管理推荐将规则写入/etc/audit/rules.d/目录下的.rules文件而不是直接使用auditctl临时添加重启后会丢失。文件按字典序加载建议按功能分文件。规则一监控 /etc/passwd 和 /etc/shadow 修改这两个文件的修改意味着用户账户变更是最常见的入侵痕迹之一。创建文件/etc/audit/rules.d/10-identity.rulescat/etc/audit/rules.d/10-identity.rulesEOF # 监控用户账户相关文件 -w /etc/passwd -p wa -k identity -w /etc/shadow -p wa -k identity -w /etc/group -p wa -k identity -w /etc/gshadow -p wa -k identity -w /etc/sudoers -p wa -k identity -w /etc/sudoers.d/ -p wa -k identity EOF参数说明-w监控的文件或目录路径-p wa监控的权限类型w写入a属性变更r读取x执行-k identity规则标签用于 ausearch 过滤规则二监控 sudo 使用cat/etc/audit/rules.d/20-sudo.rulesEOF # 监控 sudo 相关操作 -w /usr/bin/sudo -p x -k sudo_usage -w /etc/sudoers -p rwa -k sudo_config EOF规则三监控 SSH 登录cat/etc/audit/rules.d/30-ssh.rulesEOF # 监控 SSH 认证相关文件 -w /etc/ssh/sshd_config -p wa -k ssh_config -w /var/log/auth.log -p wa -k auth_log # 监控 SSH 登录通过 PAM -w /etc/pam.d/ -p wa -k pam_config EOF规则四监控 Web 目录文件访问这对于检测 Webshell 植入和文件篡改至关重要cat/etc/audit/rules.d/40-webaccess.rulesEOF # 监控 Web 根目录的读写执行和属性变更 -w /var/www -p rwxa -k webaccess EOF注意-p r读取会产生大量日志如果 Web 目录访问频繁建议只监控wa避免日志爆炸。规则五监控特权命令执行root 命令审计cat/etc/audit/rules.d/50-privileged.rulesEOF # 64位系统监控所有以 root 身份执行的命令 -a always,exit -F archb64 -S execve -F euid0 -k root_commands -a always,exit -F archb32 -S execve -F euid0 -k root_commands # 监控权限提升相关系统调用 -a always,exit -F archb64 -S setuid -S setgid -F a00 -k setuid_root -a always,exit -F archb32 -S setuid -S setgid -F a00 -k setuid_root EOF参数说明-a always,exit在系统调用退出时记录always 表示始终记录-F archb64仅匹配 64 位系统调用-S execve监控 execve 系统调用执行程序-F euid0过滤有效用户 ID 为 0root的进程规则六监控关键系统目录cat/etc/audit/rules.d/60-system.rulesEOF # 监控定时任务配置 -w /etc/cron.d/ -p wa -k cron -w /etc/crontab -p wa -k cron -w /var/spool/cron/ -p wa -k cron # 监控内核模块加载 -w /sbin/insmod -p x -k kernel_modules -w /sbin/rmmod -p x -k kernel_modules -w /sbin/modprobe -p x -k kernel_modules -a always,exit -F archb64 -S init_module -S delete_module -k kernel_modules # 锁定规则防止在运行时修改需重启才能更改 # -e 2 EOF最后的-e 2会将规则集锁定防止运行时修改适合高安全场景但需谨慎使用锁定后只能重启解锁。加载规则修改规则文件后重新加载augenrules--load# 或systemctl restart auditd# 验证规则已加载auditctl-l日志查询ausearch 与 aureportausearch 按条件过滤# 按时间范围查询最近 1 小时ausearch--startrecent-i# 按关键标签查询ausearch-kidentity-iausearch-kwebaccess-i# 按用户查询ausearch-uaroot-i# 按事件类型查询用户认证ausearch-mUSER_AUTH-i# 按时间段查询ausearch--start05/16/2026 08:00:00--end05/16/202618:00:00-i# 查询失败的操作ausearch--successno-i# 组合查询查询特定用户的失败操作ausearch-uawww-data--successno-i-i参数将 UID/GID 等数字解析为人类可读的用户名。aureport 生成摘要报告# 总体事件摘要aureport--summary# 认证事件报告登录/登出aureport--auth# 失败操作报告aureport--failed# 文件操作报告aureport--file# 登录报告aureport--login# 用户报告aureport--user# 可执行文件报告aureport--executable# 时间范围报告今天aureport--starttoday--summary# 仅查看失败的认证事件aureport--auth--failed日志轮转与归档配置长期运行后审计日志会占用大量磁盘空间。在/etc/audit/auditd.conf中配置日志轮转策略# 编辑 auditd.confvi/etc/audit/auditd.conf关键配置项# 日志文件路径 log_file /var/log/audit/audit.log # 单个日志文件最大大小MB max_log_file 100 # 保留的日志文件数量 num_logs 10 # 磁盘空间不足时的动作suspend暂停记录rotate轮转halt关机 space_left 500 space_left_action rotate # 磁盘空间严重不足时的动作 admin_space_left 100 admin_space_left_action SUSPEND # 磁盘满时的动作HALT 最安全可防止日志被绕过 disk_full_action SUSPEND disk_error_action SUSPEND修改后重启 auditd 生效systemctl restart auditd将日志发送到远程服务器在多机环境中集中收集审计日志可以防止本地日志被攻击者篡改。audisp-remote是 auditd 的远程日志转发插件。在日志服务器接收端上# 编辑 /etc/audit/auditd.conf启用远程接收# tcp_listen_port 60在被监控服务器发送端上安装 audisp-remote 插件通常随audispd-plugins安装# 编辑 /etc/audisp/plugins.d/au-remote.confcat/etc/audisp/plugins.d/au-remote.confEOF active yes direction out path /sbin/audisp-remote type always args 192.168.1.100 format string EOF# 编辑远程配置cat/etc/audisp/audisp-remote.confEOF remote_server 192.168.1.100 port 60 mode immediate queue_depth 20 EOF重启审计服务使配置生效serviceauditd restartCIS Benchmark 常见审计规则清单以下是 CIS Linux Benchmark 推荐的核心审计规则适合作为合规基准cat/etc/audit/rules.d/99-cis.rulesEOF # CIS Benchmark 推荐规则 # 确保收集时间修改事件 -a always,exit -F archb64 -S adjtimex -S settimeofday -k time-change -a always,exit -F archb32 -S adjtimex -S settimeofday -S stime -k time-change -a always,exit -F archb64 -S clock_settime -k time-change -w /etc/localtime -p wa -k time-change # 确保收集用户/组信息修改事件 -w /etc/group -p wa -k identity -w /etc/passwd -p wa -k identity -w /etc/gshadow -p wa -k identity -w /etc/shadow -p wa -k identity # 确保收集网络环境修改事件 -a always,exit -F archb64 -S sethostname -S setdomainname -k system-locale -w /etc/hosts -p wa -k system-locale -w /etc/network/ -p wa -k system-locale # 确保收集强制访问控制策略修改事件 -w /etc/apparmor/ -p wa -k MAC-policy -w /etc/apparmor.d/ -p wa -k MAC-policy # 确保收集登录/注销事件 -w /var/log/faillog -p wa -k logins -w /var/log/lastlog -p wa -k logins -w /var/log/tallylog -p wa -k logins # 确保收集会话初始化事件 -w /var/run/utmp -p wa -k session -w /var/log/wtmp -p wa -k session -w /var/log/btmp -p wa -k session # 确保收集 Discretionary Access Control 权限修改事件 -a always,exit -F archb64 -S chmod -S fchmod -S fchmodat -F auid1000 -F auid!4294967295 -k perm_mod -a always,exit -F archb64 -S chown -S fchown -S fchownat -S lchown -F auid1000 -F auid!4294967295 -k perm_mod # 确保收集未授权文件访问尝试 -a always,exit -F archb64 -S creat -S open -S openat -S truncate -S ftruncate -F exit-EACCES -F auid1000 -F auid!4294967295 -k access -a always,exit -F archb64 -S creat -S open -S openat -S truncate -S ftruncate -F exit-EPERM -F auid1000 -F auid!4294967295 -k access # 确保收集 sudo 日志 -w /var/log/sudo.log -p wa -k sudo_log EOF加载 CIS 规则augenrules--loadauditctl-l|wc-l# 查看已加载规则数量常用命令速查操作命令查看审计状态auditctl -s列出当前规则auditctl -l临时添加文件监控auditctl -w /etc/passwd -p wa -k passwd_change临时删除规则auditctl -W /etc/passwd -p wa -k passwd_change加载规则文件augenrules --load清除所有规则auditctl -D查看最近认证事件ausearch -m USER_AUTH -i按标签查询日志ausearch -k identity -i按时间查询ausearch --start recent -i查询失败操作ausearch --success no -i生成总体报告aureport --summary认证事件报告aureport --auth失败操作报告aureport --failed文件操作报告aureport --file手动轮转日志service auditd rotate查看原始日志tail -f /var/log/audit/audit.log小结auditd是 Linux 服务器安全体系中不可缺少的一环。通过合理的规则配置它能够记录服务器上发生的一切关键操作为安全审计、事件溯源和合规检查提供可靠依据。建议将本文的规则与自动化告警如将日志接入 ELK、Wazuh 等 SIEM 平台结合构建完整的安全运营能力。

相关文章:

auditd:Linux 系统审计日志,记录谁动了你的服务器

auditd:Linux 系统审计日志,记录谁动了你的服务器 服务器被入侵后,管理员面临的第一个问题往往不是"怎么修复",而是"到底发生了什么"——攻击者登录了哪个账号?修改了哪些文件?执行了什…...

DeepSeek MoE训练稳定性突破(动态负载均衡+梯度裁剪双保险):解决专家坍缩的工业级方案

更多请点击: https://kaifayun.com 第一章:DeepSeek MoE架构解析 DeepSeek MoE(Mixture of Experts)是一种面向大语言模型高效推理与训练的稀疏化架构设计,其核心思想是在保持模型总参数量庞大的前提下,仅…...

轴承‘健康体检’新思路:不用复杂公式,5步教你用CNN从振动信号中‘看’出故障先兆

轴承健康监测:用CNN像AI医生一样"听诊"振动信号 想象一下,医生通过听诊器捕捉心跳的微妙变化,就能预判潜在的健康风险。在工业设备的"健康管理"中,轴承的振动信号就像它的"心跳",而卷积…...

大模型时代,小白程序员如何抓住机遇?阿里高薪Offer背后的大模型学习指南(收藏版)

文章主要介绍了阿里在大模型领域的强势发展,包括高薪Offer和招聘趋势,强调了AI技能的重要性。作者建议小白和程序员学习大模型技术,并推荐了“派聪明RAG项目”作为学习资源。同时,文章还探讨了AI工具的实际应用和挑战,…...

OpenCost:Kubernetes 成本监控,开源的云资源费用分析

OpenCost:Kubernetes 成本监控,开源的云资源费用分析 随着企业将越来越多的工作负载迁移到 Kubernetes,一个新的管理挑战随之浮现:到底哪个团队、哪个应用在花钱? 公有云账单只能告诉你整个集群的月度费用,…...

瑞萨RH850芯片HSM软件实现:从硬件隔离到安全通信

1. RH850芯片HSM模块的硬件基础 第一次接触瑞萨RH850芯片的HSM(Hardware Security Module)功能时,我被它精妙的硬件设计所震撼。这颗芯片内部其实藏着两个"大脑":主处理器(Host)和专为安全设计的…...

从PyTorch到边缘设备:手把手教你用OpenVINO优化YOLOv5模型并在Jetson Orin上部署

从PyTorch到边缘设备:OpenVINO优化YOLOv5模型与Jetson Orin部署实战 在工业质检、智慧零售等实时场景中,将YOLOv5这类目标检测模型部署到Jetson Orin等边缘设备时,开发者常面临三大挑战:模型体积臃肿导致内存不足、计算资源有限影…...

为什么92%的研究者搜不到关键书评?Perplexity图书评论搜索的3大认知盲区与实时校准方案

更多请点击: https://codechina.net 第一章:为什么92%的研究者搜不到关键书评? 学术资源检索的失效,往往并非源于信息缺失,而是检索逻辑与出版生态的错位。当前主流学术数据库(如Google Scholar、CNKI、JS…...

告别命令行!用Offset Explorer(原Kafka Tool)图形化管理Kafka集群,5分钟上手

告别命令行恐惧:用Offset Explorer实现Kafka集群的可视化高效管理 对于许多开发者和运维人员来说,Kafka的命令行操作就像一道难以逾越的门槛。那些复杂的参数、冗长的命令和难以直观理解的输出,常常让人望而却步。而Offset Explorer&#xff…...

蓝桥杯JavaB组赛后复盘:从‘类斐波那契’到‘星际旅行’,我的解题思路与踩坑实录

蓝桥杯JavaB组赛后复盘:从‘类斐波那契’到‘星际旅行’,我的解题思路与踩坑实录 1. 考场策略与时间分配 比赛开始前15分钟,我快速浏览了所有题目,用铅笔在草稿纸上标注了每道题的预估难度和解题方向。这种策略让我避免了"死…...

别再搞混了!设备上那个RJ45口是Console调试口,不是网口(附电路设计详解)

别再搞混了!设备上那个RJ45口是Console调试口,不是网口(附电路设计详解) 第一次接触企业级网络设备时,许多新手都会犯一个经典错误——把设备背面那个看似网口的RJ45接口当作普通网络接口使用。我曾亲眼见过一位实习生…...

若依(RuoYi)框架安全自查清单:开发者必知的5个高危漏洞与修复方案

若依(RuoYi)框架安全自查清单:开发者必知的5个高危漏洞与修复方案 在当今快速迭代的软件开发环境中,安全防护已成为项目全生命周期中不可忽视的关键环节。作为国内广泛使用的快速开发框架,若依(RuoYi)凭借其模块化设计和丰富的功能集成&#…...

ATmega328P烧录Bootloader报错?别急着换芯片,可能是签名搞的鬼(附avrdude.conf修改教程)

ATmega328P烧录Bootloader报错?别急着换芯片,可能是签名搞的鬼(附avrdude.conf修改教程) 当你兴致勃勃地准备给新买的ATmega328P芯片烧录Bootloader时,突然弹出一串红色报错信息,那种心情就像煮熟的鸭子飞走…...

从继电器到MOS管:电源控制电路选型实战与仿真验证

1. 继电器与MOS管:电源控制的双面选择 第一次接触电源控制电路时,我像大多数新手一样纠结:到底该用继电器还是MOS管?这个问题困扰了我整整两周,直到在某个深夜调试电路时,继电器"咔嗒"的机械声突…...

从零构建:基于YOLOv8/YOLOv10的智能游戏瞄准系统深度解析

从零构建:基于YOLOv8/YOLOv10的智能游戏瞄准系统深度解析 【免费下载链接】yolov8_aimbot Aim-bot based on AI for all FPS games 项目地址: https://gitcode.com/gh_mirrors/yo/yolov8_aimbot 你是否曾经好奇,人工智能技术如何精准识别游戏中的…...

订阅Token Plan套餐如何在实际开发中有效控制大模型调用成本

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 订阅Token Plan套餐如何在实际开发中有效控制大模型调用成本 对于开发团队而言,将大模型能力集成到自动化流程或内部工…...

解锁本科论文高效创作新思路,okbiye 赋能毕业生轻松完成学术撰稿

okbiye-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AI PPT毕业论文 - Okbiye智能写作https://www.okbiye.com/ai/bylw 引言 步入毕业季,本科阶段最后的学术考核毕业论文,成为众多应届学子面前最大的难题。从前期选题构思、框架梳理&…...

okbiye 实测:本科生如何用 AI 搞定毕业论文全流程,从选题到格式一步到位

okbiye-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AI PPT毕业论文 - Okbiye智能写作https://www.okbiye.com/ai/bylw 引言:当本科论文撞上 “时间焦虑”,你需要的不是 “文字裁缝” 凌晨三点的宿舍,电脑屏幕的蓝光映着你通…...

STM32F103C8T6的MODBUS-RTU从机实战:基于RS485的寄存器读写

1. MODBUS-RTU与STM32F103C8T6的工业应用价值 在工业自动化领域,设备间的可靠通信是系统稳定运行的基础。STM32F103C8T6作为一款性价比极高的Cortex-M3内核微控制器,配合MODBUS-RTU协议和RS485物理层,能够构建出稳定高效的设备监控网络。这种…...

从开题到定稿,okbiye 如何让本科毕业论文写作告别 “通宵焦虑”

okbiye-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AI PPT毕业论文 - Okbiye智能写作https://www.okbiye.com/ai/bylw 一、本科毕业论文的 “三座大山”,正在拖垮你的毕业季 对于大多数本科生而言,毕业论文写作早已不是 “写一篇文章”…...

3分钟快速上手Inter字体:免费开源字体如何提升你的数字产品体验

3分钟快速上手Inter字体:免费开源字体如何提升你的数字产品体验 【免费下载链接】inter The Inter font family 项目地址: https://gitcode.com/gh_mirrors/in/inter Inter字体是一款专为屏幕显示设计的开源无衬线字体,凭借其出色的可读性和多语言…...

2026年的专业床垫,从平价到高端究竟该怎么选?

在忙碌的生活中,拥有一张好床垫能显著提升睡眠质量。2026年市场上床垫种类繁多,从平价到高端各有特色,该如何选择呢?下面为大家详细分析。平价床垫:性价比之选平价床垫通常价格亲民,适合预算有限的消费者。…...

怎么远程操作另一台手机 手机能远程控制别的手机吗

想远程操作另一台手机应急?不管是忘带工作机需回复客户消息,还是手游玩家用备用机远程控制主力机挂机领福利,都需要好用的工具。市面上能远程操作另一台手机的软件不少,但是却多有短板,难以适配需求。推荐无界趣连2.0&…...

告别环境冲突!用Miniconda3在Windows上为不同Python项目创建独立开发环境(保姆级图文)

告别Python环境冲突:Miniconda3在Windows下的高效开发环境管理实战 刚接手新项目的Python开发者小王遇到了一个典型问题:本地运行良好的Django 3.2项目,在同事电脑上却频频报错。经过排查,发现是Python环境版本不一致导致的依赖冲…...

基于8ms平台的嵌入式GUI开发实践:智能家居86盒UI设计与实现

1. 项目概述:当智能家居遇上8ms,一个86盒的UI革命 最近在折腾一个智能家居的改造项目,核心是想把家里那些老旧的开关面板,换成能联网、能自定义、还能显示点信息的“智能大脑”。市面上现成的智能开关要么功能固化,要么…...

ncmdumpGUI:Windows平台终极NCM解密工具,3分钟解锁网易云音乐格式限制

ncmdumpGUI:Windows平台终极NCM解密工具,3分钟解锁网易云音乐格式限制 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 还在为网易云音乐…...

用C++模拟流感传播:从信息学奥赛题到理解传染病模型(附完整代码)

用C模拟流感传播:从信息学奥赛题到理解传染病模型(附完整代码) 流感传播模型一直是计算机模拟和算法竞赛中的经典问题。这道来自信息学奥赛的题目不仅考察了递推算法的应用,更让我们得以一窥传染病传播的基本原理。本文将带你从零…...

企业级应用如何利用Taotoken的容灾与路由能力保障AI服务高可用

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 企业级应用如何利用Taotoken的容灾与路由能力保障AI服务高可用 对于将大模型能力深度集成到关键业务流程的企业应用而言&#xff0…...

从CID到SCR:一张SD卡的‘身份证’里到底藏了多少秘密?聊聊厂商、版本与总线宽度的那些事

从CID到SCR:一张SD卡的‘身份证’里到底藏了多少秘密?聊聊厂商、版本与总线宽度的那些事 当你从抽屉里翻出一张积灰的SD卡,除了容量标签和品牌Logo,是否想过这张小塑料片里还藏着完整的"身份档案"?就像法医通…...

macOS用户必备:3步解决QQ音乐加密格式的终极转换方案

macOS用户必备:3步解决QQ音乐加密格式的终极转换方案 【免费下载链接】QMCDecode QQ音乐QMC格式转换为普通格式(qmcflac转flac,qmc0,qmc3转mp3, mflac,mflac0等转flac),仅支持macOS,可自动识别到QQ音乐下载目录,默认转…...