You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于满足统一失败追踪与RADIUS优先认证的PAM配置咨询

满足需求的PAM配置方案

修改后的完整配置

auth required pam_env.so
auth required pam_faillock.so preauth audit even_deny_root deny=4 unlock_time=300
auth [success=1 default=ignore] pam_succeed_if.so quiet user in root
auth [success=done authinfo_unavail=ignore user_unknown=ignore default=1] pam_tacplus.so conf=/var/opt/tms/output/pam_tacplus_server.conf try_first_pass service=silverpeak protocol=ip
auth sufficient pam_unix.so nullok nodelay try_first_pass
auth required pam_faillock.so authfail audit deny=4 unlock_time=300
auth required pam_deny.so

配置逻辑说明(对应你的两个需求)

1. 统一失败追踪(覆盖RADIUS+本地认证失败)

  • 将pam_faillock.so preauth移至RADIUS模块前,确保所有登录请求先经过失败锁定预检查,若账户累计失败达阈值直接拒绝。
  • RADIUS认证失败(如密码错误)时,触发default=1规则,跳过本地认证模块,直接执行pam_faillock.so authfail累计失败次数,最后由pam_deny.so拒绝登录。
  • 本地认证失败时,pam_unix.so认证不通过,流程自动走到pam_faillock.so authfail统计失败次数,再触发拒绝。
  • 两种认证方式的失败都会被统计,累计4次后锁定账户5分钟(unlock_time=300)。

2. RADIUS可用时禁止本地fallback

  • RADIUS模块的控制标志精准控制流程:
    • success=done:RADIUS认证成功时,直接结束流程,不触发本地认证。
    • authinfo_unavail=ignore:仅当RADIUS服务器不可达/无响应时,跳过该模块,继续尝试本地认证。
    • default=1:RADIUS服务器可达但返回认证失败(如密码错误),跳过本地认证模块,直接进入失败统计和拒绝流程,完全避免fallback。

注意事项

  • 保持pam_faillock的参数一致(deny=4、unlock_time=300),避免统计逻辑混乱。
  • 测试两种核心场景:RADIUS可达但认证失败时,确认不会触发本地认证;RADIUS不可达时,确认正常fallback到本地。
  • 原配置中root用户会跳过RADIUS直接使用本地认证,若需要root也走RADIUS流程,可删除pam_succeed_if模块或调整其规则。

内容的提问来源于stack exchange,提问作者Harshavardhan Patnayukuni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 17:23:12