使用audit工具常规命令监控系统访问文件

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: audit工具的作用audit工具可以对文件使用进行监控,可以监控是哪个进程对文件进行读写执行和atrribute属性修改。在常规运维中有很多作用。audit工具的安装和启动Ubuntu使用apt-get audit。

audit工具的作用

audit工具可以对文件使用进行监控,可以监控是哪个进程对文件进行读写执行和atrribute属性修改。在常规运维中有很多作用。

audit工具的安装和启动

Ubuntu使用apt-get audit。centos使用yum install audit
下面命令enable和启动、停止auditd

systemctl enable auditd 
Systemctl start auditd
Service auditd restart //在centos7.x上当auditd启动以后,
//auditd配置拒绝使用systemctl stop、restart 。只能使用service命令
Service auditd stop

audit工具的使用

audit关键组件

  • auditctl audit配置工具
  • ausearch audit结果查找工具
  • aureport report工具
  • autrace 跟踪工具,对一个进程进行跟踪类似于strace
  • auditd进程
  • /etc/audit/rules.d/audit.rules auditd进程启动后会从此处读去配置
  • /var/log/audit/audit.log audit详细日志都记录在此处

audit 常规使用方法

使用audit监控文件的读写访问

  • auditctl工具添加规则
    auditctl添加的规则每次audit服务重启后就消失了。
auditctl -l //查看当前生效的audit规则
Auditctl -w /home/zxy -p wxra // 参数-w对某个文件、目录进行监控,-p后面跟着是规则 w 写入 r 读 x 执行 a修改属性
auditctl -W /home/zxy //参数-W对某个文件、目录取消监控

auditctl 添加的规则也可以写入到/etc/audit/rules.d/audit.rules 文件最尾巴上,它可以保证每次audit服务重启后,规则还有效。

  • ausearch 查找规则监控的结果
    正常情况下audit启动后会出现大量的监控日志,可以使用ausearch 对日志进行过滤只显示感兴趣的项目
Ausearch -f zxy.txt //在日志中过滤出所有和zxy.txt相关的项目
  • audit输出项说明
字段 用途 其他
Time 审计时间 na
name 审计对象 na
cwd 访问发起的当前路径 na
syscall 发起访问的系统调用号 在linux系统的unistd.h中有记录系统调用号
ppid 父进程id na
pid 进程id na
uid 访问文件的用户id 0号表示root用户
gid 访问文件的用户组id 0号表示root用户组
com 访问的用户命令 na
exe 访问的用户命令的全路径 na
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
7月前
|
Kubernetes Shell Linux
linux|shell脚本|有趣的知识---格式化输出日志和脚本调试方法以及kubernetes集群核心服务重启和集群证书备份脚本
linux|shell脚本|有趣的知识---格式化输出日志和脚本调试方法以及kubernetes集群核心服务重启和集群证书备份脚本
239 0
|
4月前
|
存储 监控 安全
|
运维 监控 关系型数据库
【运维知识进阶篇】zabbix5.0稳定版详解4(用脚本自定义监控项+监控MySQL状态信息)(二)
【运维知识进阶篇】zabbix5.0稳定版详解4(用脚本自定义监控项+监控MySQL状态信息)(二)
109 0
|
运维 监控 关系型数据库
【运维知识进阶篇】zabbix5.0稳定版详解4(用脚本自定义监控项+监控MySQL状态信息)(一)
【运维知识进阶篇】zabbix5.0稳定版详解4(用脚本自定义监控项+监控MySQL状态信息)
169 0
|
SQL 机器学习/深度学习 关系型数据库
Shell变量的作用、类型,及如何利用脚本配合任务计划远程备份mysql数据库
Shell变量的作用、类型,及如何利用脚本配合任务计划远程备份mysql数据库
152 0
Shell变量的作用、类型,及如何利用脚本配合任务计划远程备份mysql数据库
|
监控 Shell
使用 Shell 脚本监控主机,实现主机性能监控
使用 Shell 脚本监控主机,实现主机性能监控
509 0
使用 Shell 脚本监控主机,实现主机性能监控
|
监控 网络协议 Shell
shell脚本实现zabbix监控信息收集
zabbix信息收集 一般zabbix信息收集都是写成脚本 思路:将监控的信息写成函数,使用位置参数$1来调用函数即可,一般都是zabbix来传参
554 0