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

Oracle Linux 8.x LDAP用户SSH登录失败问题排查求助

LDAP用户无法SSH登录Oracle Linux 8.x虚拟机排查

环境

运行Oracle Linux Server release 8.x的虚拟机

LDAP相关配置

/etc/nslcd.conf 有效配置

$ sudo grep -v -E '^\s*(#|$)' /etc/nslcd.conf
uid nslcd
gid ldap
uri ldap://ldap.local.{company}.com/
base dc={company},dc=com

/etc/pam.d/system-auth 有效配置

$ sudo grep -v -E '^\s*(#|$)' /etc/pam.d/system-auth
auth        sufficient                           pam_ldap.so
auth        required                                     pam_env.so
auth        required                                     pam_faildelay.so delay=2000000
auth        [default=1 ignore=ignore success=ok]         pam_usertype.so isregular
auth        [default=1 ignore=ignore success=ok]         pam_localuser.so
auth        sufficient                                   pam_unix.so nullok
auth        [default=1 ignore=ignore success=ok]         pam_usertype.so isregular
auth        sufficient                                   pam_sss.so{cpmpany}_pass
auth        required                                     pam_deny.so
account     required                                     pam_unix.so
account     sufficient                                   pam_localuser.so
account     sufficient                                   pam_usertype.so issystem
account     [default=bad success=ok user_unknown=ignore] pam_sss.so
account     required                                     pam_permit.so
password    requisite                                    pam_pwquality.so local_users_only
password    sufficient                                   pam_unix.so sha512 shadow nullok use_authtok
password    sufficient                                   pam_sss.so use_authtok
password    required                                     pam_deny.so
session     optional                                     pam_keyinit.so revoke
session     required                                     pam_limits.so
-session    optional                                     pam_systemd.so
session     [success=1 default=ignore]                   pam_succeed_if.so service in crond quiet use_uid
session     required                                     pam_unix.so
session     optional                                     pam_sss.so

/etc/nsswitch.conf 有效配置

$ sudo grep -v -E '^\s*(#|$)' /etc/nsswitch.conf
passwd:     files ldap
group:      files ldap
netgroup:   sss files
automount:  sss files
services:   sss files
shadow:     files sss
hosts:      files dns myhostname
aliases:    files
ethers:     files
gshadow:    files
networks:   files dns
protocols:  files
publickey:  files
rpc:        files

问题描述

无法使用LDAP用户SSH登录虚拟机,执行SSH登录命令后提示 Permission denied, please try again.。已确认:

  • 可正常获取LDAP用户信息
  • 与LDAP服务器交互正常
  • ping、telnet等连通性测试均无问题

排查方向

  1. PAM配置语法与冲突问题

    • /etc/pam.d/system-auth中pam_sss.so{cpmpany}_pass存在明显语法错误,多了无效后缀,会导致该模块加载失败,直接触发后续pam_deny.so拒绝认证,需修正为auth sufficient pam_sss.so。
    • 配置中同时混用pam_ldap.so和pam_sss.so,且认证顺序优先级混乱:pam_localuser.so优先匹配本地用户,pam_unix.so处理本地密码,LDAP认证模块优先级靠后,可能导致LDAP用户认证请求被提前拦截。
  2. SSSD配置缺失

    • /etc/nsswitch.conf中shadow、netgroup等条目依赖sss,但未配置SSSD的LDAP连接信息。若计划用SSSD管理LDAP,需确保/etc/sssd/sssd.conf正确配置LDAP服务器地址、用户搜索路径等,且sssd服务正常运行。
  3. 登录权限限制

    • 检查LDAP用户对象的host属性是否包含当前虚拟机的主机名/IP,确认LDAP服务器是否限制用户登录目标主机;
    • 检查本地/etc/security/access.conf,确认是否存在针对LDAP用户的登录限制规则。
  4. SSH服务配置检查

    • 查看/etc/ssh/sshd_config,确认UsePAM yes已开启,且AllowUsers/DenyUsers/AllowGroups等配置未禁止LDAP用户或其所在组登录。
  5. 日志定位具体错误

    • 查看/var/log/secure或执行journalctl -u sshd,获取SSH认证失败的详细日志;
    • 查看journalctl -u nslcd、journalctl -u sssd,确认LDAP/SSSD模块在认证过程中的报错信息。

内容的提问来源于stack exchange,提问作者nagarjuna v

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 18:33:23