2016-08-12 90 views
-1

我正在尋找一個庫,我可以導入到我的python(3.5)代碼來簡化audit.log的處理(在我的CentOS6上它是/var/log/audit/audit.log)。我正在考慮一個將日誌行處理爲python數組的庫,例如,以人爲的方式啓用查詢/過濾,而無需編寫所有進程以完成工作。用於處理linux的audit.log的Python庫?

我發現了約audit-python,但它不在pip列表中,並且找不到安裝CentOS6的方法。到目前爲止,沒有希望圖書館處理這個廣泛的審計日誌。

我一直在谷歌搜索一段時間,但似乎沒有這樣的圖書館,或者有嗎?也許有人會分享他們如何在python中處理audit.log的代碼?這對每個使用python的系統管理員都很有用。

回答

0

,因爲我沒有找到一個圖書館,也沒有任何提示,所以我已經使用由審計的包提供的二進制想出這個功能:

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 

我由子模塊調用二進制,因此代碼頭部需要import subprocess。該功能通過ausearch工具在所提供的時間之間抓取程序執行日誌。

0

您可以安裝該軟件包:setroubleshoot-server

然後看文件/bin/sealert這是一個Python程序,並確實與audit.log的東西很多基於標誌。

+0

感謝您的建議。我已經安裝了該實用程序,但它需要大約10個依賴來安裝它,如果我應該依靠調用二進制文件,我會找到工具'ausearch',這個工具會隨審覈一起更好地滿足我的需求。 – obeliksz