练习 - 日志监控

mac2022-06-30  102

#需求#监控日志,如果有攻击(多少次以上),就把ip 拉黑

#分析: #1、打开日志文件 #2、把 ip 地址取出 #3、判断每一个 ip 出现的次数,如果大于100次的话,加入黑名单 #4、每分钟读一次 #5、记录指针,不重复读取

#示例:

#直接循环一个文件对象的话,每次循环的是文件的每一行# 文件句柄 文件对象

import timepoint = 0 #定义point 用来记录文件指针的位置while True:

all_ips = [] f  = open(r'C:\Users\Lynn\Desktop\access.log',encoding='utf-8')

f.seek(point) #移动文件指针的位置

for line in f: ip = line.split()[0] all_ips.append(ip)

point = f.tell() # 获取到当前文件指针的位置

for i in set(all_ips): if all_ips.count(i) > 50: print('攻击的ip是:%s' %i)

f.close()

time.sleep(60) #暂停60 秒

转载于:https://www.cnblogs.com/lynn-chen/p/8691699.html

相关资源:监控日志-源码
最新回复(0)