Linux報錯:audit: backlog limit exceeded(審計:超出積壓限制)

来源:https://www.cnblogs.com/it-log/archive/2023/03/25/17254440.html
-Advertisement-
Play Games

Linux報錯:audit: backlog limit exceeded(審計:超出積壓限制) 系統版本:CentOS Linux release 7.6.1810 (Core) 問題現象:一次巡檢中發現業務系統打不開,對應的Linux伺服器ssh連接不上,但是能ping通,於是在VMware v ...


Linux報錯:audit: backlog limit exceeded(審計:超出積壓限制)

系統版本:CentOS Linux release 7.6.1810 (Core)

問題現象:一次巡檢中發現業務系統打不開,對應的Linux伺服器ssh連接不上,但是能ping通,於是在VMware vcenter 遠程式控制制台打開操作系統界面,報錯提示 audit: backlog limit exceeded,嘗試“ctrl+z”中斷報錯未果,只能強行關機,重新開機能正常系統。

問題原因:audit服務記錄的審計事件超出預設(或設置)數量 ,達到或超出容量的審計緩衝區隊列也可能導致實例鎖定或持續無響應狀態。

解決辦法:由於嘗試“ctrl+z”中斷報錯未果,只能強行關機,重新開機才能正常系統,究其原因不採取措施,審計事件再次溢出依舊會出現該問題。

方法一:增加審計緩衝區空間(audit buffer)

註意:增加審計緩衝區會消耗系統的更多記憶體。設置 backlog_limit 參數的大小取決於系統的總記憶體。如果系統有足夠的記憶體,則可以嘗試將現有的 backlog_limit 參數值加倍。

審計積壓所需記憶體的計算公式。使用此計算公式來確定在不對系統造成記憶體壓力的情況下可以設置多大的積壓隊列。
一個審計緩衝區 = 8970 位元組
審計緩衝區的預設數量(backlog_limit 參數)= 320
320 * 8970 = 2870400 位元組(2.7MiB)

在本示例中,我將 backlog_limit 參數值更改為 10000 個緩衝區。根據上述計算公式,10000 個緩衝區等於87MiB 記憶體。您可以根據記憶體計算公式使用任何值。

1、查看當前預設配置:auditctl -s

2、在內核中設置最大現有審計緩衝量:auditctl -b 8192

永久設置,修改規則配置文件:vi /etc/audit/audit.rules

參數說明:
-D              刪除所有規則
-b              設置audit緩衝大小,若緩衝占滿了,則kernel會發出一個失敗標記
-f 0|1|2        設置audit獲取錯誤的等級。有0/1/2三個值。0是不輸出日誌;1為輸出printk日誌;2為最高級、會輸出大量日誌信息
-e 0|1          啟用/禁用audit審核

3、重新啟動 auditd 服務。

service auditd stop
service auditd start
service auditd restart

方法二:禁用aduit審核,不進行審計事件記錄(不建議)

參考鏈接:7.5. 定義審計規則 Red Hat Enterprise Linux 7 | Red Hat Customer Portal

 

知識拓展:Linux系統審核

Linux Audit 系統提供了一種方式來跟蹤系統中的安全相關信息。根據預配置的規則,審計會生成日誌條目,以記錄有關係統上發生事件的儘可能多的信息。對於關鍵任務環境而言,此信息對於確定安全策略的違反者及其執行的操作至關重要。Audit 不會為您的系統提供額外的安全性,而是可用於發現系統上使用的安全策略違規。通過 SELinux 等其他安全措施可以進一步阻止這些衝突。 以下列表總結了審計可以在其日誌文件中記錄的一些信息:
  • 事件的日期和時間、類型和結果.
  • 主題和對象的敏感度標簽。
  • 事件與觸發事件的用戶的身份相關聯。
  • 對 Audit 配置的所有修改,並嘗試訪問 Audit 日誌文件。
  • 所有身份驗證機制的使用,如 SSH 和 Kerberos 等。
  • 對任何受信任資料庫的更改,如 /etc/passwd.
  • 嘗試從系統導入或導出信息.
  • 根據用戶身份、主題和對象標簽以及其他屬性,包含或排除事件。
使用審計系統也是許多安全相關認證的一項要求。審計旨在滿足或超過以下認證或合規指南的要求:
  • 受控訪問保護配置文件(CAPP)
  • 標記的安全保護配置文件(LSPP)
  • 規則集基本訪問控制(RSBAC)
  • 國家工業安全計劃操作手冊(NISPOM)
  • 聯邦信息安全管理法案(FISMA)
  • 支付卡行業 - 數據安全標準(PCI-DSS)
  • 安全技術實施指南(STIG)
審計還包括:
  • 由國家信息保障合作伙伴(NIAP)和最佳安全行業(BSI)評估。
  • 通過紅帽企業 Linux 5 上的 LSPP/CAPP/RSBAC/EAL4+ 認證.
  • 紅帽企業 Linux 6 上經過操作系統保護配置文件/評估保證級別 4+(OSPP/EAL4+)認證.

使用案例

監視文件訪問
審計可以跟蹤文件或目錄是否已訪問、修改、執行或文件屬性是否已更改。例如,這可用於檢測對重要文件的訪問,併在其中一個文件損壞時提供審計跟蹤。
監控系統調用
可將審計配置為在每次使用特定系統調用時生成日誌條目。例如,這可用於通過監控 settimeofday、clock_adjtime 和其他時間相關係統調用來跟蹤系統時間的更改。
記錄用戶運行的命令
審計可以跟蹤文件是否已執行,因此可以定義規則以記錄特定命令的每次執行。例如,可以為 /bin 目錄中的每個可執行文件定義規則。然後,可以按用戶 ID 搜索生成的日誌條目,以生成每個用戶所執行命令的審計跟蹤。
記錄系統路徑名稱的執行
除了觀察在規則調用時轉換索引節點路徑的文件訪問之外,審計現在還可以觀察路徑的執行,即使路徑在規則調用中不存在,或者在規則調用後替換了文件。這允許規則在升級程式可執行文件或甚至安裝之前繼續運行。
記錄安全事件
pam_faillock 身份驗證模塊能夠記錄失敗的登錄嘗試。也可以將審計設置為記錄失敗的登錄嘗試,並提供試圖登錄的用戶的附加信息。
搜索事件
Audit 提供 ausearch 實用程式,可用於過濾日誌條目並根據多個條件提供完整的審計跟蹤。
運行摘要報告
aureport 實用程式可用於生成記錄的事件的日常報告等。然後,系統管理員可以分析這些報告,併進一步調查可疑活動。
監控網路訪問
iptables andebtables 實用程式可以配置為觸發審計事件,使系統管理員能夠監控網路訪問。
註意 系統性能可能會受到影響,具體取決於審計收集的信息數量。
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 9 月 15 日,Figma 的 CEO Dylan Field 發佈消息:今天,Figma 宣佈接受 Adobe 的收購... Adobe 以約 200 億美元收購 Figma,這也是 Adobe 該公司在其歷史上的最大一筆收購。那是什麼樣的魔力,讓 Figma 被 Adobe 收購呢?下麵以定位 ...
  • 實現Redis的database層(核心層:處理命令並返回) https://github.com/csgopher/go-redis 本文涉及以下文件: dict:定義字典的一些方法 sync_dict:實現dict db:分資料庫 command:定義指令 ping,keys,string:指令 ...
  • Antlr4 簡介 ANTLR(全名:ANother Tool for Language Recognition)是基於LL(*)演算法實現的語法解析器生成器(parser generator),用Java語言編寫,使用自上而下(top-down)的遞歸下降LL剖析器方法。由舊金山大學的Terence ...
  • 導入的文件 前端點擊上傳得到文件(MultipartFile file 【這裡是存放的臨時文件】) 本人前端用的vue3,elementui, 導入按鈕代碼 <!--導入文件 --> <el-col :span="1.5"> <el-button type="info" plain icon="el ...
  • 如題,很簡單,就是先用chardet 庫識別文件編碼,解碼之後再輸出成目標編碼。算是個偶爾能用上的小工具,要用的時候萬一沒有就很難受的那種,比如,網上下載了別人的項目文件,一打開全是亂碼…… 代碼 加了比較詳細的註釋~~ 看懂的要求應該不高,平時用過Python,知道幾個常用庫就行。 from pa ...
  • TIDB簡介 什麼是TIDB TiDB 是一個分散式 NewSQL 資料庫。它支持水平彈性擴展、ACID 事務、標準 SQL、MySQL 語法和 MySQL 協議,具有數據強一致的高可用特性,是一個不僅適合 OLTP 場景還適合 OLAP 場景的混合資料庫。 TiDB 是 PingCAP 公司自主設 ...
  • 在前面的設計和實現中,我們的微服務開發平臺通過JustAuth來實現第三方授權登錄,通過集成公共組件,著實減少了很多工作量,大多數的第三方登錄直接通過配置就可以實現。而在第三方授權登錄中,微信小程式授權登錄和APP微信授權登錄是兩種特殊的第三方授權登錄。 JustAuth之所以能夠將多種第三方授權登 ...
  • 使用 Linux dd 命令測試磁碟讀寫性能 從幫助手冊中可以看出,dd命令可以複製文件,根據操作數進行轉換和格式化。我這裡記錄一下dd命令用於測試磁碟I/O性能的過程。 dd 可從標準輸入或文件中讀取數據,根據指定的格式來轉換數據,再輸出到文件、設備或標準輸出。 dd 命令用法: Usage: d ...
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...