小编rra*_*nza的帖子

通过 PAM 过滤 LDAP 用户,使其看起来根本不存在

很久以前,在我们的公司环境中,一些奇才决定将用户“ mysql”放入 LDAP。

该帐户被禁用:

$ sudo su - mysql
This account is currently not available.
Run Code Online (Sandbox Code Playgroud)

...但它的 id 仍然存在:

$ id mysql
uid=2050913(mysql) gid=867(ENG) groups=867(ENG)
Run Code Online (Sandbox Code Playgroud)

这使得在 CentOS7 上安装 mariadb 失败,因为它/var/run/mariadb是由 tmpfile 规则创建的,该规则试图将目录分配给 mysql。但是 mysql 在 LDAP/网络启动并运行之前不存在,并且 mariadb 安装不会创建mysql用户,因为该用户已存在于 ldap 中。

有没有办法在本地强制 PAM(或其他什么?)忽略 LDAP 中的用户 mysql?或者将 ldapmysql用户重命名为mysql_ldap?

是我手动添加条目的唯一解决方法/etc/passwd吗?(或更改 mariadb 配置以使用不同的用户名。)我宁愿对来自 rpm 的配置和 systemd 文件进行最少的更改。

(而且我对mysql从 LDAP中删除没有寄予厚望,因为这可能会破坏许多遗留基础设施。)

顺便说一句,我将使用 ansible 来实现更改。

额外的:

我已经更改了问题的标题:

我发现,如果我确实添加了本地“ mysql”用户,它就可以正常工作,除非我拥有 LDAP“ mysql” 用户的用户ID 所拥有的文件。如果我是 …

ldap pam sssd ansible centos7

5
推荐指数
1
解决办法
1184
查看次数

标签 统计

ansible ×1

centos7 ×1

ldap ×1

pam ×1

sssd ×1