Linux 文件监控之谁动了我的奶酪
有时候配置文件会被莫名其妙的修改,但是找不到修改他的进程,从而无法抓住罪魁祸首,这时候就诞生了摄像头。呃呃,应该是audit
比如我要监控一个文件test.txt
[root@hsun /]# auditctl -w /audit/
[root@hsun /]# auditctl -l
(null): exit,always dir=/audit perm=rwxa
查询确认有规则添加。
然后再audit目录创建test.txt,向文件写内容。
[root@hsun audit]# ausearch -f test.txt
----
time->Fri Jul ::
type=UNKNOWN[] msg=audit(1564139108.755:): proctitle=746F75636800746573742E747874
type=PATH msg=audit(1564139108.755:): item= name="test.txt" inode= dev=fd: mode= ouid= ogid= rdev=: objtype=CREATE
type=PATH msg=audit(1564139108.755:): item= name="/audit" inode= dev=fd: mode= ouid= ogid= rdev=: objtype=PARENT
type=CWD msg=audit(1564139108.755:): cwd="/audit"
type=SYSCALL msg=audit(1564139108.755:): arch=c000003e syscall= success=yes exit= a0=7fffec3dd1ba a1= a2=1b6 a3=7fffec3dad40 items= ppid= pid= auid= uid= gid= euid= suid= fsuid= egid= sgid= fsgid= tty=pts0 ses= comm="touch" exe="/usr/bin/touch" key=(null) ...
...
...
time->Fri Jul ::
type=UNKNOWN[] msg=audit(1564139120.915:): proctitle="-bash"
type=PATH msg=audit(1564139120.915:): item= name="test.txt" inode= dev=fd: mode= ouid= ogid= rdev=: objtype=NORMAL
type=PATH msg=audit(1564139120.915:): item= name="/audit" inode= dev=fd: mode= ouid= ogid= rdev=: objtype=PARENT
type=CWD msg=audit(1564139120.915:): cwd="/audit"
type=SYSCALL msg=audit(1564139120.915:): arch=c000003e syscall= success=yes exit= a0=24cab90 a1= a2=1b6 a3= items= ppid= pid= auid= uid= gid= euid= suid= fsuid= egid= sgid= fsgid= tty=pts0 ses= comm="bash" exe="/usr/bin/bash" key=(null)
[root@hsun audit]#
我们主要关注里面的 comm="bash" exe="/usr/bin/bash" key=(null),这两个字段,通过这两个字段我们就知道是什么命令操作了我们的文件或目录。
如果需要删除这条规格,可以使用以下命令,
[root@hsun audit]# auditctl -W /audit/
[root@hsun audit]# auditctl -l
No rules
也就是使用小写的w添加规则,大写的W删除规则。
然后就能查看到什么进程动了这个文件。
Linux 文件监控之谁动了我的奶酪的更多相关文章
- Linux文件监控
关键词:linux, 监控 假设要让server保持最佳性能,你应该将 Linux server的执行级别 runlevel 设置为 3 .就是控制台模式.当你须要图形化桌面的时候使用 startx ...
- ctf比赛linux文件监控和恢复shell
之前参加ctf比赛时候临时写的,有很多不足,不过可以用,就贴出来分享给大家,希望对大家有帮助. 脚本一:记录当前目录情况 #!/bin/bashfunction getdir(){ for el ...
- 针对Linux 文件完整性监控的实现
针对Linux 文件完整性监控的实现 摘要 计算机和互联网是20世纪以来最伟大的发明之一,随着计算机技术的不断发展,人们的生活方式发生了巨大的变化.计算机和互联网的发展给人们的生产生活带来了极大的便利 ...
- zabbix监控linux文件的一个目录大小
监控linux文件的一个目录大小 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 欢迎加入:高级运维工程师之路 598432640 我们知道,Linux自带的一些监控模板 ...
- Linux下日志文件监控系统Logwatch的使用记录
Linux下日志文件监控系统Logwatch的使用记录 原文:http://www.cnblogs.com/kevingrace/p/6519504.html 在维护Linux服务器时,经常需要查看系 ...
- /var/log/messages文件监控
近来项目中遇到一个问题,情况是这样的,我们使用ELK中的LOGSTASH来监控LINUX的系统日志文件:/var/log/messages文件,但这个文件默认的权限是600,这样很为难, 我们使用特定 ...
- linux上监控tomcat down掉后自动重启tomcat
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } p. ...
- [转]linux 系统监控、诊断工具之 IO wait
1.问题: 最近在做日志的实时同步,上线之前是做过单份线上日志压力测试的,消息队列和客户端.本机都没问题,但是没想到上了第二份日志之后,问题来了: 集群中的某台机器 top 看到负载巨高,集群中的机器 ...
- linux 进程监控
linux 进程监控 supervise Supervise是daemontools的一个工具,可以用来监控管理unix下的应用程序运行情况,在应用程序出现异常时,supervise可以重新启动指定程 ...
随机推荐
- [分享会] 微服务框架设计 (基于Swoole)
框架三要素 1. Service 通信 2. 服务管理 3. 开发组件 为什么需要服务 1.自治性 2.可组合 3.异构性 2.弹性扩展 -实现方式- 共享库 1.二进制文件/Compos ...
- solr添加中文IK分词器,以及配置自定义词库
Solr是一个基于Lucene的Java搜索引擎服务器.Solr 提供了层面搜索.命中醒目显示并且支持多种输出格式(包括 XML/XSLT 和 JSON 格式).它易于安装和配置,而且附带了一个基于H ...
- Swarm 集群并用 Portainer 管理
https://blog.csdn.net/zhrq95/article/details/79430284 使用docker-proxy代理服务(所有节点): docker pull docker.i ...
- 文件和异常练习2——python编程从入门到实践
10-6 加法运算:提示用户输入提供数值输入,常出现的一个问题是,用户提供的是文本而不是数字.这种情况下,当你尝试将输入转换为整数时,将 引发TypeError异常.编写一个程序,提示用户输入两个数字 ...
- vps建站施工预告
作为一个小白,最近几天自己用vps搭了个站点,用来发发博客,偶尔还可以去外面看看.后面几章就来记一下过程吧! 结构极为简单,建站用的WordPress,目前也就只有最基础的发文章功能.不过由于习惯了m ...
- Mybatis自动生成代码工具
项目结构如下 一:在POM中添加mybatis-generator-maven-plugin 插件 <plugins> <plugin> <groupId>org. ...
- 软件测试人员必备的Python知识图库
UI自动化测试(Python+Selenium等) 接口测试(Python requests等) 性能测试(Python Locust等) 安全性测试(Python Scapy等) 兼容性测试(Pyt ...
- Unity - 绘制正五边形网格
本文简述了Unity中绘制正五边形网格的基本方法:计算顶点信息.设置三角形覆盖信息.创建配置mesh 绘制方法 基本思路:计算出五边形顶点坐标信息作为数组,设置三角形包围方式,再创建新的mesh配置v ...
- Visual Studio 2019 安装
目录 写在前面 官网下载 安装 等待安装 启动 写在前面 目前工作的开发环境还是旧版本的Visual Studio 2013版.个人感觉还是有点跟不上时代更新迭代的节奏了.毕竟,技术在进步.如果我们也 ...
- DbParameter关于Like查询的传参数无效问题
用传参方式模糊查询searchName 按常规的思路,我们会这样写 ,代码如下: String searchName ="Sam"; String strSql = "s ...