Python 用于处理 linux 的 audit.log 的库?
Python library for handling linux's audit.log?
我正在寻找一个 python (3^) 库来简化 audit.log 的处理(在 CentOS6 上位于 /var/log/audit/audit.log)。我正在考虑一个库,它将日志行抓取到 python 并以人为方式启用 querying/filtering。
有一个名为 audit-python 的工具的痕迹,不在 pip 列表中,看起来不太有前途。到目前为止,还没有图书馆处理这种广泛传播的审计日志的希望。
也许有些人会分享他们如何处理 audit.log 的代码?
您可以安装包:setroubleshoot-server
然后查看文件 /bin/sealert
,它是一个 python 程序,根据标志用 audit.log
做了很多事情。
因为我没有找到库,也没有人推荐,所以我使用审计包提供的二进制文件想出了这个函数:
def read_audit(before,now,user):
auparam = " -sc EXECVE"
cmd = "ausearch -ts " + before.strftime('%H:%M:%S') + " -te " + now.strftime('%H:%M:%S') + " -ua " + user + auparam
p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
res = p.stdout.read().decode()
return res
我通过 subprocess 模块调用二进制文件,所以代码的头部需要一个 import subprocess
。该函数通过 ausearch
工具获取所提供时间之间的程序执行日志。
我正在寻找一个 python (3^) 库来简化 audit.log 的处理(在 CentOS6 上位于 /var/log/audit/audit.log)。我正在考虑一个库,它将日志行抓取到 python 并以人为方式启用 querying/filtering。
有一个名为 audit-python 的工具的痕迹,不在 pip 列表中,看起来不太有前途。到目前为止,还没有图书馆处理这种广泛传播的审计日志的希望。
也许有些人会分享他们如何处理 audit.log 的代码?
您可以安装包:setroubleshoot-server
然后查看文件 /bin/sealert
,它是一个 python 程序,根据标志用 audit.log
做了很多事情。
因为我没有找到库,也没有人推荐,所以我使用审计包提供的二进制文件想出了这个函数:
def read_audit(before,now,user):
auparam = " -sc EXECVE"
cmd = "ausearch -ts " + before.strftime('%H:%M:%S') + " -te " + now.strftime('%H:%M:%S') + " -ua " + user + auparam
p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
res = p.stdout.read().decode()
return res
我通过 subprocess 模块调用二进制文件,所以代码的头部需要一个 import subprocess
。该函数通过 ausearch
工具获取所提供时间之间的程序执行日志。