我正在尝试在Ubuntu 18.04中使用GDM3(3.28.0(配置LDAP。
但是我可以使用ldap用户登录终端。在GUI中,我无法登录(著名的GDM循环登录(。
我配置 pam 以创建主文件夹:
vim /etc/pam.d/common-session
session required pam_mkhomedir.so umask=077 skel=/etc/skel
但是,这还不够!
我安装了lightdm,在这个GUI中,我可以登录!
有什么建议吗?
谢谢!
我通过安装 nscd 服务解决了这个问题。
听起来可能与我在使用 NIS 时遇到的问题相同,启动后我一天左右无法登录。 为了深入了解它,我必须:
- 斯特拉克 -F GDM
- 发现其 gdm 会话工作线程子程序从 dbus-daemon 返回 FileNotFound 错误
- 使用 strace 查找 dbus-daemon 只是从另一个 UNIX 域套接字获取它
- 使用 sudo ss -anp 查找来自 systemd-logind
- strace -s1000 发现,就在查看 yp 绑定文件之后,但在它使用 FileNotFound 执行 sendmsg 之前,它得到:
socket(AF_INET, SOCK_STREAM, IPPROTO_TCP) = -1 EAFNOSUPPORT (Address family not supported by protocol)
。想想"咦,这到底是怎么回事?"并尝试谷歌上的"登录NIS"。显然,通过网络查找用户组或登录者在这里执行的任何操作都是不安全的,至少没有一些单独的锁定守护进程。您可能认为它被认为足够重要,值得一条明智的错误消息,但我想这可能是 nscd 或 nss-nis 或其他东西的错误。从那里开始,一帆风顺
:https://wiki.archlinux.org/index.php/NIS#Attention_on_Systemd_V235_since_10/2017_(and_V239_since_06/2018(
。因此调整他们的答案:
sudo mkdir /etc/systemd/system/systemd-logind.service.d/
sudo tee /etc/systemd/system/systemd-logind.service.d/open_network_interface.conf <<EOF
[Service]
RestrictAddressFamilies=AF_UNIX AF_NETLINK AF_INET AF_INET6
IPAddressAllow=any
EOF
sudo systemctl daemon-reload
sudo systemctl restart systemd-logind
维基上关于 IPAddressAllow=any 不覆盖默认值的警告似乎不适用于今天在 Debian Buster 上。简单地做一个守护程序重新加载,你会想,但没有。nscd 也被列为那里的解决方案,但我们已经安装了它,我尝试在之前立即登录不同的 VT 并保持登录状态 - 没有骰子。据推测,它有时可以在一天或其他时间之后起作用。