pam_groupdn 根本不起作用。始终允许所有用户登录

pam_groupdn 根本不起作用。始终允许所有用户登录

我曾尝试在 fedora23 上安装 pam、ldap。我已将 pam.d/system-auth 配置如下:

    #%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 >= 100 quiet
    auth sufficient    pam_ldap.so use_first_pass
    auth required      pam_deny.so

    account     required      pam_unix.so broken_shadow
    account     sufficient    pam_localuser.so
    account     sufficient    pam_succeed_if.so uid < 500 quiet
    account     sufficient    pam_ldap.so
    account     required      pam_permit.so

    password    requisite     pam_cracklib.so try_first_pass retry=3 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     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
    session     required      pam_unix.so
    session     optional      pam_ldap.so

ldap.conf 如下:

    BASE dc=aaa,dc=bbb,dc=ccc
    URI ldap://aaa.bbb.ccc/
    sudoers_base ou=SUDOers,dc=aaa,dc=bbb,dc=ccc
    pam_groupdn cn=serverFedora,ou=groups,dc=aaa,dc=bbb,dc=ccc

但是所有用户都可以登录,无论他们是否在群组中。知道我错过了什么吗?

先谢谢了


谢谢你的回答,我查了一下 man,但这个选项不受支持。我检查了一下,在 /etc/nslcd.conf 中找到了此选项:

base group   ou=people,dc=aaa,dc=bbb,dc=ccc?one?memberOf=cn=fedoraserver,ou=groups,dc=aaa,dc=bbb,dc=ccc
base passwd  ou=people,dc=aaa,dc=bbb,dc=ccc
base shadow  ou=people,dc=aaa,dc=bbb,dc=ccc

以及 /etc/ldap.conf 中的内容:

nss_base_group     cn=fedoraserver,ou=groups,dc=aaa,dc=bbb,dc=ccc
nss_base_passwd     ou=people,dc=aaa,dc=bbb,dc=ccc
nss_base_shadow     ou=people,dc=aaa,dc=bbb,dc=ccc

但我仍然遇到同样的问题,所有用户都可以登录,无论他们是否是 fedoraserver 的成员。有什么想法吗?

答案1

并非所有pam_ldap模块都支持相同的选项,而pam_groupdn您尝试使用的选项来自 PADL 对该模块的实现,大多数 Linux 发行版都试图放弃该模块。不建议返回旧的 PADL 模块,因为每个进程都必须维护自己独立的状态和与 LDAP 服务器的连接。

检查手册页 ( man pam_ldap) 并验证是否列出了此选项。如果不存在,则表示您正在使用其他 PAM 模块,您需要查阅文档以了解如何使用当前模块实现此组限制。

(或者,看看pam_limits

相关内容