脚本_根据 md5 校验码,检测文件是否被修改
#!bin/bash
#功能:根据 md5 校验码,检测文件是否被修改
#作者:liusingbon
#本示例脚本检测的是/etc 目录下所有的 conf 结尾的文件,根据实际情况,您可以修改为其他目录或文件
#在目标数据没有被修改时执行一次脚本,当怀疑数据被人篡改,再执行一次;将两次执行的结果做对比,MD5 码发生改变的文件,就是被人篡改的文件
for i in $(ls /etc/*.conf)
do
md5sum "$i" >> /var/log/conf_file.log
done
比如:执行脚本前,先查看下md5校验码,如果怀疑数据被篡改,再执行一次脚本,比对md5校验码是否有变化:
[root@client ~]# cat /var/log/conf_file.log
cb74fedd10be5db16f6ff2353181d58d /etc/chrony.conf
649f5bf7c0c766969e40b54949a06866 /etc/dracut.conf
7ee18e3a79c3f2aba431e5e044dfc37f /etc/e2fsck.conf
72daece0832454d1e46fa1dead8590da /etc/GeoIP.conf
4eb63731c9f5e30903ac4fc07a7fe3d6 /etc/host.conf
b8d3e9f412e116fb93b9047f5fef9f37 /etc/krb5.conf
cb878ee72257736aafffff720130ca9c /etc/ld.so.conf
121c7f429126e65574656fb0fbc37e78 /etc/lftp.conf
cdc703f9d27f0d980271a9e95d0f18b2 /etc/libaudit.conf
6bd2bb550f448cb81c6f0cbf806b936f /etc/libuser.conf
164aba1ef1298affaa58761647f2ceba /etc/locale.conf
4b32bbe6d2d20a1f3150b0fb3918ae54 /etc/logrotate.conf
ee665f08e63e1942b56ada46d25b9e3f /etc/man_db.conf
b3fa4684455e14b66015af02a24d7c96 /etc/mke2fs.conf
643b68a0994aa69649e5b3f13dcf5635 /etc/nsswitch.conf
e5ef4c8f4837c1d833cf644100abe369 /etc/resolv.conf
c63fccb45c0dcbbbe17d0f4bdba920ec /etc/rsyncd.conf
0dd94a0c285fb32f41fa5b226e83c26b /etc/rsyslog.conf
8f42efd9d1efe717f27267e6a4286453 /etc/sestatus.conf
5d796b9d28e62cecda9df8ffbfb2f962 /etc/sudo.conf
60eac7835f1d36c4ffdcb401a84c3e6c /etc/sudo-ldap.conf
324c073ebf5a4811bf7fd5610f170350 /etc/sysctl.conf
839ba642d4de3d2115db7170bd0b6cba /etc/tcsd.conf
2a6ece5145eb8d37d2ea2f5811ff9351 /etc/updatedb.conf
bde42c1da4093344b653743c5cdb463d /etc/vconsole.conf
a8082a894410bece6b9290e8116a9e79 /etc/whois.conf
a7dc0d7b8902e9c8c096c93eb431d19e /etc/yum.conf
脚本_根据 md5 校验码,检测文件是否被修改的更多相关文章
- 030_根据 md5 校验码,检测文件是否被修改
#!/bin/bash#本示例脚本检测的是/etc 目录下所有的 conf 结尾的文件,根据实际情况,可以修改为其他目录或文件#本脚本在目标数据没有被修改时执行一次,当怀疑数据被人篡改,再执行一次#将 ...
- C# 获取文件MD5校验码
using System; using System.IO; using System.Security.Cryptography; using System.Text; public class M ...
- Java 获取 文件md5校验码
讯雷下载的核心思想是校验文件的md5值,两个文件若md5相同则为同一文件. 当得到用户下载某个文件的请求后它根据数据库中保留的文件md5比对出拥有此文件的url, 将用户请求挂接到此url上并仿造一个 ...
- Android MD5校验码的生成与算法实现
在Java中,java.security.MessageDigest (rt.jar中)已经定义了 MD5 的计算,所以我们只需要简单地调用即可得到 MD5 的128 位整数.然后将此 128 位计 ...
- java生成MD5校验码
在Java中,java.security.MessageDigest (rt.jar中)已经定义了 MD5 的计算,所以我们只需要简单地调用即可得到 MD5 的128 位整数.然后将此 128 位计 ...
- linux 文件 md5校验
为解决官方发布的软件包被别人更改或者软件在传输过程中出现传输错误等问题,软件官方在提供软件包的同时,还提供一个保存MD5校验码的文件. Linux/unix中可以使用命令 # md5sum 文件名 方 ...
- Java 自带MD5 校验文件
http://www.iteye.com/topic/1127319 前天第一次发表博客到论坛,关于Java文件监控一文,帖子地址在:http://www.iteye.com/topic/112728 ...
- md5和SHA校验码
md5已经不安全了,中国山东大学女学霸王小云破解了一系列密码,当真是巾帼不让须眉.说是破解,其实就是给你一个md5码,让你求出这个md5码所对应的原始信息,显然一个md5对应无数种原始信息.而md5的 ...
- MD5校验
好久没有写随笔了,正好这两天可以休整一下,借此机会总结下最近使用python的小体会. 个人体会文件校验在下载文件时使用较多,在linux下最简单的实现方式就是: 1 $ md5sum filenam ...
随机推荐
- kafka docker-composer.yml
使用Docker快速搭建Kafka开发环境 表现力 关注 0.5 2018.05.04 03:00* 字数 740 阅读 25240评论 1喜欢 11 Docker在很多时候都可以帮助我们快速搭建想 ...
- LeetCode--047--全排列 II(java)
给定一个可包含重复数字的序列,返回所有不重复的全排列. 示例: 输入: [1,1,2] 输出: [ [1,1,2], [1,2,1], [2,1,1] ] 对比46题增加了used数组,判断该数上次是 ...
- CodeChef Max-digit Tree(动态规划)
传送门. 题解: 最主要的问题是如何判断一个数是否合法,这就需要发现性质了. 这个状态划分还是不太容易想到, 每次加的数\(∈[0,k)\),也就是个位一直在变变变,更高的位每次都是加一,这启发我们状 ...
- python 全栈开发,Day53(jQuery的介绍,jQuery的选择器,jQuery动画效果)
01-jQuery的介绍 1.为什么要使用jQuery 在用js写代码时,会遇到一些问题: window.onload 事件有事件覆盖的问题,因此只能写一个事件. 代码容错性差. 浏览器兼容性问题. ...
- BZOJ 3879: SvT 虚树 + 后缀自动机
Description (我并不想告诉你题目名字是什么鬼) 有一个长度为n的仅包含小写字母的字符串S,下标范围为[1,n]. 现在有若干组询问,对于每一个询问,我们给出若干个后缀(以其在S中出现的起始 ...
- 20180705-Java基础语法
Java基础语法 一个Java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象:对象是类的一个实例,有状态和行为.例如,一条 ...
- 学习日记2、easyui treeGrid属性及时间
属性 该属性扩展自数据网格(datagrid),下面是为树形网格(treegrid)添加的属性. 名称 类型 描述 默认值 idField string 定义标识树节点的键名字段.必需. null t ...
- Nginx 禁止IP访问 只允许域名访问
今天要在Nginx上设置禁止通过IP访问服务器,只能通过域名访问,这样做是为了避免别人把未备案的域名解析到自己的服务器IP而导致服务器被断网,从网络上搜到以下解决方案: Nginx的默认虚拟主机在用户 ...
- 洛谷P1120 小木棍 [数据加强版](搜索)
洛谷P1120 小木棍 [数据加强版] 搜索+剪枝 [剪枝操作]:若某组拼接不成立,且此时 已拼接的长度为0 或 当前已拼接的长度与刚才枚举的长度之和为最终枚举的答案时,则可直接跳出循环.因为此时继续 ...
- MySQL工作中遇到的问题记录
1:log_slave_updates: 从库1搭建级联从库2,从库1需要开启log_slave_updates,修改/etc/my.cnf,增加一行log_slave_updates=1,重启数据库 ...