首页 > 代码库 > 如何让脚本定时执行
如何让脚本定时执行
一、计划任务
1. 非root用户创建计划任务
crontab -u bin -e
crondtab-u bin -l //查看方法
ls /var/spool/cron/ //所有计划任务存放目录
2. 高级crontab ,篡改一个系统级别的计划任务
ls /etc/cron //按两下tab键查看
cron.d/ #系统级别的定时任务
cron.daily/ #系统每天要执行计划任务
cron.hourly/ #系统每小时要执行计划任务
cron.monthly/ #系统每月要执行计划任务
cron.weekly/ #系统每周要执行计划任务
find /etc/cron* //查看可以添加系统级别的计划任务
案例:添加系统级别的木马程序
vim /etc/cron.daily/tmpwatch //在定时删除/tmp目录下临时文件的脚本最后添加
echo aaa
排查方法:利用md5sum ,来检验文件的完整性,脚本修改前后MD5不一样
语法:md5sum 文件
对/etc/cron*下所有文件都生成md5值
find /etc/cron* -type f -exec md5sum {} \; > /usr/share/file_md5.v1 // 先提前生成,如忘记,从新机器上操作
find /etc/cron* -type f -exec md5sum {} \; >/usr/share/file_md5.v2 // 怀疑有问题时,再从生成
diff /tmp/file_md5.v1 /tmp/file_md5.v2 // 最后两者对比
注: 1 * * * * //为每小时的第一分钟!!!
二、开机启动
1. /etc/rc.local // 开机启动脚本中添加木马脚本
排查方法:显示时,过滤掉空行
grep -v ^$ /etc/rc.local //^$ #以空开头以空结尾行,就空行。 -v #表示取反,显示
注:一定要cat,不使用vim ,因为有的黑客会故意在rc.local中添加很多空白行,在中间或最后添加一个脚本
2. 利用开机启动的服务器脚本来加载木马程序,例如: httpd (apache web服务器启动脚本),更厉害的黑客自己写一个开机启动程序
ls /etc/init.d/ // 这个目录下的脚本文件,都是可以开机启动的脚本文件
排查方法:
方法1:对比其他服务器好的配置文件 ,利用MD5值做对比
方法2:查看被黑当天生成或被修改的文件
find /etc/init.d/ -mtime -1 // 查看被前一天到现在被修改的文件
三、系统命令被人替换,定一个触发事件
排查方法:使用 rpm检查文件的完整性
语法:rpm -V 软件包的名字 // 使用 rpm检查文件的完整性
rpm -Vf 命令的绝对路径 // 使用 rpm检查命令的完整性
rpm -Va // 查看所有rpm安装的软件包,生成命令或文件是否被改过
说明:
S file Size 大小不一致
M Mode 模式不一致 (包括许可和文件类型)
5 MD5 sum 校验和不一致
D Device 主从设备号不匹配
L readLink 路径不匹配
U User 属主不一致
G Group 所属组不一致
T mTime 修改时间不一致
本文出自 “一马踏平川” 博客,请务必保留此出处http://huangzp.blog.51cto.com/12434999/1911753
如何让脚本定时执行