服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

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

在我们的企业环境中,很久以前,一些智者决定把用户“ mysql ”放到LDAP中。 该帐户已被禁用: $ sudo su – mysql This account is currently not available. …但它的身份证仍然存在: $ id mysql uid=2050913(mysql) gid=867(ENG) groups=867(ENG) 这使得mariadb安装在CentOS7上失败,因为/var/run/mariadb是由一个tmpfile规则创build的,该规则尝试将该目录分配给mysql所拥有。 但是,在LDAP /networking启动并运行之前,mysql不存在,而mariadb安装不会创buildmysql用户,因为用户已经存在于LDAP中。 有没有办法在本地强制PAM(或其他?)在LDAP中忽略用户mysql? 或者将ldap mysql用户重命名为mysql_ldap ? 我唯一的解决方法是在/etc/passwd手动添加条目吗? (或者更改mariadbconfiguration以使用不同的用户名。)我宁愿对来自rpm的configuration文件和systemd文件做最小的更改。 (而且我不希望从LDAP中删除mysql ,因为这可能会破坏很多传统的基础设施。) 我会用顺从,顺便说一句,来实现这个变化。 额外: 我已经改变了问题的标题: 我发现,如果我添加本地“ mysql ”用户,它工作正常,除非我有LDAP“ mysql ”用户的用户ID所拥有的文件。 如果我使用这些文件,则会污染nscd(或sssd)caching,“ mysql ”会再次parsing为LDAP用户。 看来我真正想要的是以某种方式构build帐户的PAMfilter,以使此LDAP“ mysql ”用户消失。