我们已经使用 kerberos、pam 和 winbindd 将 Linux 瘦客户端与 AD 集成。我们使用 pam_mkhomedir 来创建主目录,并且运行良好。但是,当 AD 用户在用户名中使用混合字母或大写字母时,登录脚本不会运行。AD 不区分大小写,它不关心用户使用的是“name”还是“Name”。因此,当用户“bob”使用“Bob”登录时,他得到的是主目录 /home/bob,但用户名是 Bob,这与 Linux 中的用户名并不完全相同。我希望用户名始终转换为小写,这可能吗?
# Pam file #
auth sufficient pam_unix.so nullok try_first_pass
auth sufficient pam_krb5.so use_first_pass
auth sufficient pam_winbind.so use_first_pass
auth required pam_deny.so
account required pam_access.so
account sufficient pam_unix.so broken_shadow debug
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 100 quiet
account [default=bad success=ok user_unknown=ignore] pam_winbind.so
account required pam_permit.so
password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok
password sufficient pam_krb5.so use_authtok
password sufficient pam_winbind.so use_authtok
password required pam_deny.so
session optional pam_mkhomedir.so umask=0022 skel=/etc/skel/ debug
session optional pam_keyinit.so revoke
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session optional pam_unix.so
session optional pam_krb5.so ccache=/tmp/krb5cc_%u
答案1
您可以使用pam_regex如果您愿意,模块可以将所有用户名转换为小写。
尽管我很质疑你为什么首先希望允许混合大小写名称,但这似乎会导致混乱和折磨。