标签:审计日志每天登录
背景:公司的审计日志经常出现不记录命令的情况,但是又无法监控到审计功能是否正常。所以我们思路是,每天从CMDB服务器 ssh登录到每一台主机。如果审计功能正常,则一定会在auditlog.info文件中有登录的记录。如果24小时内这个文件没有任何变化,则表明,该主机的audit功能异常,无法记录日志了。
创建登录脚本
#!/usr/bin/env python2.7 import commands,requests,json #host_ip = ‘10.47.102.185‘ url = ‘http://10.47.102.185/api/ecs‘ r = requests.get(url) ecss = json.loads(r.text) for I in ecss: host_ip = I.get(‘ip‘) # if host_ip != ‘10.174.107.151‘: status,result = commands.getstatusoutput(‘ssh -o ConnectTimeout=3 -o StrictHostKeyChecking=no root@{0} "echo \"audit check\""‘.format(host_ip)) if status == 0: print ‘{0} check success‘.format(host_ip) else: print ‘{0} check failed‘.format(host_ip)
ConnectTimeout=3 表示超时时间为3秒
StrictHostKeyChecking
首次 ssh 登陆时提示确认 yes/no,确认 yes 后会把远程节点加入到本地的 ~/.ssh/known_hosts 中,下次再连接同一节点则不再提示。为了省事不确认,可以使用如下参数登陆
ssh -o StrictHostKeyChecking=no ...
这样便不再确认且自动把远程主机的信息添加到 ~/.ssh/known_hosts 中。
创建每天定时任务:
10 1 * * * root /usr/bin/python2.7 /srv/script/audit_check.py
Trigger:
{Template OS Linux:vfs.file.cksum[/var/log/userlog.info].diff(0)}=0
标签:审计日志每天登录
原文地址:http://zengestudy.blog.51cto.com/1702365/1835652