openldap 用户使用 tcsh 时无法登录

openldap 用户使用 tcsh 时无法登录

对于以下问题,我将不胜感激任何帮助:

我有一台 openladp (2.3.39) 服务器 (Fedora 8),它对来自其他 ldap 客户端 (各种版本的 Fedora) 的用户进行身份验证。在我尝试升级整个基础架构时,使用 tcsh (作为其默认 shell) 的 ldap 用户无法登录运行 CentOS 7 的新客户端。相反,使用 bash 的 ldap 用户以及本地用户 (无论其默认 shell 是什么) 都可以毫无问题地登录。

Ldap tcsh 用户无法从控制台或 ssh 登录。从控制台,我收到的消息是:

pam_unix(login:auth) authentication failure
pam_unix(login:session) session opened for user

并从 ssh (没有失败部分):

pam_unix(sshd:session) session opened for user

但是,用户从未收到 shell 提示,表明登录挂起。我不知道问题是否与 pam 有关,但在我的 /etc/pam.d/system-auth-ac 下找到它,因为它是由 system-authconfig 自动创建的:

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
auth        sufficient    pam_ldap.so use_first_pass
auth        required      pam_deny.so

account     required      pam_access.so
account     required      pam_unix.so broken_shadow
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 1000 quiet
account     [default=bad success=ok user_unknown=ignore] pam_ldap.so
account     required      pam_permit.so

password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password    sufficient    pam_ldap.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_ldap.so

提前致谢。

更新:问题似乎与 nfs 导出的主目录有关。Logging in with home = "/"但是,如果我从客户端卸载共享分区,用户就会。

答案1

最后发现是 nfs 的问题。客户端是 v.4,而服务器是 v.3,因此sec=sys客户端需要 mount 选项。

感谢所有关心的人。

相关内容