Linux报错:audit: backlog limit exceeded(审计:超出积压限制)
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系统审核
- 事件的日期和时间、类型和结果.
- 主题和对象的敏感度标签。
- 事件与触发事件的用户的身份相关联。
- 对 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 实用程序可以配置为触发审计事件,使系统管理员能够监控网络访问。
Linux报错:audit: backlog limit exceeded(审计:超出积压限制)的更多相关文章
- audit:backlog limit exceeded
今天发现存储服务器业务不可用,服务器能ping通,远程不了! 到机房管理员那里查看服务器状态后,发现显示如下: 显然系统已经崩溃,只能先重启服务器,先恢复业务,然后针对backlog limit e ...
- ES部署报错 max file size 和 kibana 报错File size limit exceeded
启动失败一 ERROR: [2] bootstrap checks failed [1]: max file descriptors [4096] for elasticsearch process ...
- error: audit:backlog limit exceeded
报错场景:telnet.ping.ftp都通的情况下,无法ssh服务器 原因:audit缓冲区设置过小,服务器默认缓冲区大小为320kb 解决办法:可通过auditctl -b 8192设定缓冲区大小 ...
- kernel: audit: printk limit exceeded
问题: 小长假的第一天早上8:18一个数据,被定时任务中的脚本漏处理: 查定时任务的日志,发现调度异常 查var messages-20171231 日志信息,排查问题. http://man7.or ...
- 64位linux报错Could not initialize class java.awt.image.BufferedImage
最近碰到一个问题: 64位linux报错Could not initialize class java.awt.image.BufferedImage 在WIN平台下运行正常BufferedImage ...
- Linux报错之ping: www.baidu.com: Name or service not known
Linux报错之ping: www.baidu.com: Name or service not known 出现这个以后,首先去ping下主机Ip,发现能ping通,但是出现另一个问题Destina ...
- Linux报错
Linux报错 ------------------- 在VMware虚拟机中配置yum源时,执行 mount /dev/cdrom /mnt/cdrom 出现 mount: no medium fo ...
- FXP登录Linux报错
1.用FXP登录Linux报错: [info] subsystem request for sftp failed, subsystem not found.[右] [execute] /usr/li ...
- linux 报错:E: Package 'libmemcached' has no installation candidate
linux 报错:E: Package 'libmemcached' has no installation candidate 网上查资料说是软件安装源没有这个软件,需要添加软件源. 1.备份源列表 ...
- 【解决方法】安装Win7和linux双系统后,linux报错“无法分配所提交的分区 not enough free space on disks”问题,以及win7无法启动“BootMGR image is corrupt....”问题
近日,在笔记本上重装了Win7 企业版(64位)后,想装个linux双系统,于是开始安装 centOS 6.2(光盘安装) 硬盘分了一个主分区(c盘),一个扩展分区(3个逻辑分区:d,e,f盘),然后 ...
随机推荐
- UNIT FIVE TO EIGHT
内存单元间接表示 mov dl, [0] :直接寻址 mov bx, 0mov dl, [bx]:间接寻址 loop指令 1.语法 loop 标号 2.CPU执行指令过程 ① (cx) ← (cx) ...
- Vscode插件离线安装教程+中文插件安装失败解决方案
参考地址:https://blog.csdn.net/r657225738/article/details/108460875
- @Conditional注解分析,SpringBoot自动化配置的关键
基于SpringBoot 2.1.5.RELEASE分析 @Conditional系列注解 @Conditional系列注解是SpringBoot自动化配置的核心要点之一,主要用于设定条件,在达到一定 ...
- PyCharm 关闭代码风格检查
在使用PyCharm的时候,有时候,前后得空格,不然就会出现波浪线,比较烦人 关闭代码风格检查地方是:File-Settings-Editor-Inspactions-Python-PEP8 codi ...
- svg矢量二维码加盖在PDF文件中
正常行驶的bitmap类型的二维码格式,加载到PDF中,将会导致二维码失真,无法扫描. 矢量图可根据尺寸大小进行调节,不会出现失真模糊情况 所用依赖 <PackageReference Incl ...
- pycharm导入第三方包
- Java (新)将Excel数据读取到ListMap
Java (新)将Excel数据读取到ListMap Maven依赖: pom.xml <!-- excel --> <dependency> <groupId>o ...
- MSSQL T-SQL 基础 (创建、增、删、改)
1.创建数据库 create database StudentAchievementMS ----创建数据库,可以只执行此行来创建数据库,但以下属性都是默认 on primary --主数据文件 ( ...
- Spring 笔记一
1.什么是框架? 框架,是一种半成品的软件,是高度抽取可重用代码的一种设计,多个可重用模块的集合,形成某个领域的整体解决方案. 2.Spring 框架 概述:Spring 是一个开源框架,一个容器框架 ...
- 更改windows powershell默认路径
查看配置文件位置 $profile 修改配置文件 code $profile 加上 Set-Location C:\Users\zzy81\Desktop