我已经在 Linux 服务器(ubuntu 16.04)上设置了 pam 和 nss,以从远程 postgresql 数据库获取用户和组。在我解决了找不到数据库存储组的问题之后,现在可以正常登录服务器了。
但是如果我现在尝试使用数据库存储的用户进行 sudo,我会收到错误
ckel@sync1:~$ sudo -i
sudo: unknown uid: 1006
sudo: unable to initialise policy plug-in
该用户是 %admin 的成员,该用户在 /etc/sudoers 中配置
%admin ALL=(ALL) ALL
所有本地用户都可以按预期使用 sudo,但所有数据库存储的用户都不能。
编辑:我将以下行添加到 common-* 文件中
auth optional pam_pgsql.so
account optional pam_pgsql.so
password required pam_pgsql.so
session optional pam_mkhomedir.so
session optional pam_pgsql.so
本地和 ssh 登录都可以