讲师中心 微信公众号
AI工具推荐 视频效率加速

大量 sudo session 日志刷屏的 pam_limits 与 rsyslog 限流方案

秋雪大大_3906

秋雪大大_3906

发布时间:2026-01-22 09:17:09

|

949人浏览过

|

来源于php中文网

原创

应关闭 pam_limits.so 的 debug 日志并为 rsyslog 添加速率限制;具体操作是删除 /etc/pam.d/sudo 等文件中的 debug 参数,并在 /etc/rsyslog.d/ 中配置 omrate limit 规则。

大量 sudo session 日志刷屏的 pam_limits 与 rsyslog 限流方案

大量 sudo session 日志刷屏,通常是 pam_limits.so 模块在每次 sudo 执行时反复写入 syslog(如 rsyslog)导致的,尤其在脚本高频调用 sudo 或容器环境里特别明显。根本原因不是日志级别设太高,而是 PAM 模块默认开启 debug 日志且缺乏限流机制。解决方向有两个:一是关闭 pam_limits 的冗余日志,二是对 rsyslog 中相关日志做速率限制。

关闭 pam_limits 的 debug 日志输出

pam_limits.so 默认启用 debug 选项时,会为每次会话打印类似 pam_limits(limit): 'nofile' set to 1024 soft, 65536 hard 的日志。只要它出现在 /etc/pam.d/sudo/etc/pam.d/common-session 中并带 debug,就会持续刷屏。

  • 检查 PAM 配置文件中是否含 debug:运行 grep -r "pam_limits.*debug" /etc/pam.d/
  • 若存在,编辑对应文件(如 /etc/pam.d/sudo),将 required pam_limits.so debug 改为 required pam_limits.so(删掉 debug
  • 无需重启服务,PAM 配置热生效;sudo 下次执行即不再输出该类日志

在 rsyslog 中对 pam_limits 日志限流

即使关掉 debug,某些系统版本或定制模块仍可能输出 info 级别的 limits 日志。这时可在 rsyslog 层做速率控制,避免打满磁盘或干扰其他日志。

openclaw session viewer
openclaw session viewer

生成交互式 HTML 查看器,用于审查和分析 OpenClaw 对话会话,包含历史、工具调用、令牌使用和调试细节。

下载
  • 新建限流规则文件:/etc/rsyslog.d/50-pam-limits-limit.conf
  • 写入以下内容(以每分钟最多 5 条为例):
    if $programname == 'sudo' and $msg contains 'pam_limits' then {
      :msg, contains, "pam_limits" stop
    }
    if $programname == 'sudo' and $msg contains 'pam_limits' then {
      action(type="omrate limit" 
             rule="pam_limits_limit" 
             burst="5" 
             interval="60")
      action(type="omfile" file="/var/log/sudo-pam-limits.log")
    }
  • 重启 rsyslog:systemctl restart rsyslog
  • 注意:omrate limit 是 rsyslog v8.1901+ 原生支持的模块,旧版本需启用 imuxsock 并配置 $SystemLogRateLimitInterval 全局限流,但粒度较粗

补充建议:检查是否误启了 multiple pam_limits 行

同一 PAM 配置中多次加载 pam_limits.so(例如在 common-sessionsudo 中都存在),会导致日志翻倍。建议统一收敛到一处,并确保无重复或冲突参数。

  • 运行 grep -r "pam_limits.so" /etc/pam.d/ 查看所有加载点
  • 确认 /etc/security/limits.conf/etc/security/limits.d/*.conf 是否有异常配置(如通配符或空行引发重复解析)
  • 临时测试可注释非必要位置的 pam_limits.so 行,观察日志是否减少

不复杂但容易忽略。核心就是两步:去掉 PAM 里的 debug,再给 rsyslog 加个节流阀。多数场景下,第一项就足够解决问题。

热门AI工具

更多
讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

Seko
Seko Hot

一款AI视频创作工具,主要用于商汤科技推出的创编一体的AI短视频创作Agent,适合需要提升相关任务效率的用户。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

相关专题

更多
session失效的原因
session失效的原因

session失效的原因有会话超时、会话数量限制、会话完整性检查、服务器重启、浏览器或设备问题等等。详细介绍:1、会话超时:服务器为Session设置了一个默认的超时时间,当用户在一段时间内没有与服务器交互时,Session将自动失效;2、会话数量限制:服务器为每个用户的Session数量设置了一个限制,当用户创建的Session数量超过这个限制时,最新的会覆盖最早的等等。

580

2023.10.17

session失效解决方法
session失效解决方法

session失效通常是由于 session 的生存时间过期或者服务器关闭导致的。其解决办法:1、延长session的生存时间;2、使用持久化存储;3、使用cookie;4、异步更新session;5、使用会话管理中间件。

856

2023.10.18

cookie与session的区别
cookie与session的区别

本专题整合了cookie与session的区别和使用方法等相关内容,阅读专题下面的文章了解更详细的内容。

1746

2025.08.19

Buffalo框架数据库开发全教程
Buffalo框架数据库开发全教程

本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

20

2026.09.23

Buffalo框架路由与请求处理实操指南
Buffalo框架路由与请求处理实操指南

本专题讲解Buffalo框架路由与请求处理机制,涵盖路由注册与分组、资源路由、Handler编写规范、Context上下文方法、参数绑定、中间件编写挂载、Session与Cookie读写、Flash消息及错误页面定制方法。

0

2026.09.23

Buffalo框架零基础入门教程
Buffalo框架零基础入门教程

本专题整理Buffalo框架入门内容,涵盖Go环境准备、buffalo CLI安装、新项目生成、目录结构说明、dev热加载启动、数据库连接配置与常见报错排查,帮助新手按约定优于配置的思路跑通第一个Buffalo框架应用。

0

2026.09.23

Conan创建软件包配方指南
Conan创建软件包配方指南

本专题介绍通过conanfile.py创建软件包的方法,讲解包名、版本、依赖和构建设置等基础信息,以及source、build、package、package_info等常用方法的作用及编写思路。

0

2026.09.22

Conan二进制包配置指南
Conan二进制包配置指南

本专题介绍Conan根据操作系统、编译器、架构和构建类型生成二进制包的方法,讲解Profile、Settings、Options及Package ID的作用,帮助管理不同平台和编译环境下的包版本。

20

2026.09.22

Conan私有仓库搭建教程
Conan私有仓库搭建教程

本专题系统的讲解Conan私有仓库的搭建流程,涵盖仓库服务部署、存储目录配置、用户认证、权限划分和远程地址添加,并介绍内部C++依赖包的上传、下载及版本维护方法。

20

2026.09.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Beego 官方文档首页
Beego 官方文档首页

共0课时 | 0人学习

Laravel 5.8 中文文档手册
Laravel 5.8 中文文档手册

共74课时 | 139万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn