最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Linux 服务器访问日志审计如何写
时间:2026-08-11 07:44:49 编辑:袖梨 来源:一聚教程网
Linux服务器日志审计需通过auditd内核级服务实现不可篡改记录,覆盖登录、命令执行、敏感文件访问等行为,并配合权限控制、日志轮转与异地备份保障合规性。
Linux 服务器访问日志审计不是“写”出来的,而是通过配置系统服务、定义监控规则、收集分析日志来实现的。核心目标是:谁、在什么时间、从哪台机器、访问了哪些资源(如文件、命令、服务)、做了什么操作(读/写/执行/登录等),且所有记录不可篡改、可追溯。
明确审计对象和关键日志源
先搞清你要审什么,再找对应日志:
-
用户登录与认证行为:看
/var/log/auth.log(Debian/Ubuntu)或/var/log/secure(RHEL/CentOS),记录SSH登录、sudo操作、密码失败等; -
命令执行痕迹:默认
HISTFILE不跨用户、易被清除,不可靠;必须依赖auditd捕获execve系统调用,真实记录每个bash、ls、curl等命令; -
敏感文件访问:比如
/etc/passwd、/etc/shadow、/root/.ssh/,用auditd -w规则监控读写执行; -
网络服务访问:Web服务查
/var/log/apache2/access.log或/var/log/nginx/access.log;数据库查/var/log/mysql/error.log或启用通用查询日志; -
内核级事件:SELinux拒绝、模块加载、权限变更等,统一由
/var/log/audit/audit.log记录,这是最权威的源头。
用 auditd 做可靠的行为捕获
仅靠应用日志(如auth.log)不够——它可被普通root删改;auditd直接挂钩内核,防篡改,才是审计基石:
- 确保服务运行:
systemctl enable --now auditd; - 添加永久规则(写入
/etc/audit/rules.d/cmd.rules):-a always,exit -F arch=b64 -S execve -k cmd_exec-w /etc/passwd -p wa -k passwd_mod; - 加载规则:
augenrules --load(不要用auditctl -a临时加,重启即失效); - 验证是否生效:
ausearch -k cmd_exec -ts recent | head -5,执行几个命令后应能查到记录。
日常查看与快速排查方法
不用翻原始日志文件,用专用工具高效提取信息:
- 查某用户最近所有命令:
ausearch -ui 1001 -m execve | aureport -f -i(1001是UID); - 查谁修改过/etc/passwd:
ausearch -k passwd_mod | aureport -f -i; - 查特定时间段失败登录:
ausearch -m avc -ts 2026-07-29 00:00:00 -te 2026-07-29 23:59:59 | grep denied; - 生成每日摘要报告:
aureport -ts yesterday -te today --summary,一眼看出登录数、命令数、文件访问异常量。
保障日志可用性与合规底线
审计日志本身必须受保护,否则等于没审:
- 限制访问权限:
chmod 600 /var/log/audit/audit.log*,只允许root读写; - 配置自动轮转:
/etc/logrotate.d/auditd中设maxsize 50M、rotate 12,避免撑爆磁盘; - 异地备份:每天压缩归档
/var/log/audit/目录并同步到独立安全存储; - 禁用历史命令覆盖:
echo "export HISTCONTROL=ignoredups:ignorespace" >> /etc/profile,配合auditd形成双重记录。
相关文章
- 迅捷 FW351R 无线路由器上网时间控制 08-12
- jm天堂漫画官网入口 08-12
- Moonlit Celestial Palace Gate 08-12
- Memcached gets 命令 08-12
- 迅捷 FW351R 无线路由器网速限制设置 08-12
- ZipZap-ZipZap是一款免费的AI 助手 08-12