【51CTO.com快譯】在Linux伺服器上重複的失敗登錄嘗試可能表明有人企圖闖入帳戶,或者僅僅意味著有人忘了密碼或輸錯密碼。本文介紹了如何檢查失敗的登錄嘗試並檢查系統的設置,查看何時鎖住帳戶以處理問題。
您要了解的第一件事是如何檢查登錄是否失敗。以下命令在Ubuntu和相關系統上使用的/var/log/auth.log文件中查找登錄失敗的跡象。有人嘗試使用錯誤或拼錯的密碼登錄時,失敗的登錄將顯示以下行:
您可以使用這樣的命令按帳戶匯總失敗登錄的情況:
該命令按用戶名(grep輸出的第9列)匯總失敗的登錄。它避免了查看含有「COMMAND」一詞的行,跳過含有「Failed passwords」短語的查詢(比如運行上面運行的命令的人)。 「times:」字符串表明重複嘗試的次數比報告的次數還多。這些來自含有「消息重複5次:」的行,快速連續多次輸錯密碼後,這些行可能被添加到日誌文件中。
您可能要檢查的另一個方面是失敗的登錄嘗試來自何處。為此,如本例所示,將您關注的欄位從第九個更改為第十一個:
比如說,如果您發現多個用戶的失敗登錄來自單單一個系統,這可能特別可疑。
在RHEL、Centos和相關系統中,您可以在/var/log/secure文件中找到與失敗登錄有關的消息。您可以使用與上述基本相同的查詢來計數。只需更改文件名,如下所示:
核查/etc/pam.d/password-auth和/etc/pam.d/system-auth文件中的設置。添加這樣的行將強制執行您的設置。
檢查faillog
您可能關注過faillog命令,但是該命令查看的/var/log/faillog文件如今似乎在許多系統上並沒有使用。如果您使用faillog -a命令,會得到類似如下所示的在時間列中列出12/31/69的輸出,很明顯該文件並未使用。
顯示的日期和時間可以追溯到Unix的開始(01/01/70)――可能針對本地時區進行了更正。如果您運行下面顯示的命令,可以證實文件不是空的,但不包含實際數據:
如果faillog文件確實在使用中,您應該會看到最近的活動,並不提及1969錯誤提示。
如何回應?
失敗登錄的原因有很多。可能是您的一個用戶在大寫鎖定鍵開啟的情況下試圖登錄,卻沒有注意到。也許用戶最近更改了密碼,卻忘了更改密碼這回事,嘗試使用舊密碼。也許用戶在嘗試在其他系統上使用的密碼。如果您在運行查詢時經常出現某個特定的帳戶,應調查一下。然而,偶爾失敗的登錄嘗試很常見。
檢查設置
要查看系統如何經過設置來處理失敗的登錄,請檢查/etc/pam.d/common-auth文件。它用於帶有Linux可插拔身份驗證模塊(PAM)的系統。該文件中的兩個設置控制著暫時鎖定帳戶之前允許多少次失敗的登錄嘗試以及鎖住該帳戶多長時間。
六次失敗的登錄嘗試後,這樣一行將使PAM鎖住帳戶。鎖住時間將持續五分鐘(300秒)。
原文標題:Monitoring failed login attempts on Linux,作者:Sandra Henry-Stocker
【51CTO譯稿,合作站點轉載請註明原文譯者和出處為51CTO.com】
【編輯推薦】
【責任編輯:
華軒TEL:(010)68476606】