首先,我将简要解释我的架构

Openldap服务器:安装了openldap的Ubuntu 14.04计算机。我关注了这篇文章
https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-a-basic-ldap-server-on-an-ubuntu-12-04-vps
我为每个posix帐户添加了sshpublickey的架构

OpenLDAP客户端:安装了libpam-ldap nscd的Ubuntu 14.04。我再次遵循了数字海洋链接。
https://www.digitalocean.com/community/tutorials/how-to-authenticate-client-computers-using-ldap-on-an-ubuntu-12-04-vps

我在OpenLDAP客户端计算机上更改了sshd_config文件,并提供了AuthorizedKeysCommand / my / script,它查询ldap服务器并获取sshkey,然后我具有基于密钥的ssh身份验证。

到目前为止,一切正常。我也有一个ubuntu用户,它是本地用户,不受LDAP管理。

现在,当我停止Openldap Server计算机上的slapd守护程序时,
我作为客户端计算机上的ubuntu用户的活动ssh会话挂起(无法重新启动任何服务或运行ls或cat之类的基本命令)。即使当我尝试以不受LDAP管理的ubuntu用户身份登录到客户端计算机时,它也会失败(它通过了身份验证,但是无法获取环境变量并无法打开交互式会话)

摘自ssh -v ubuntu @ IP

debug1:认证成功(公钥)。

已认证为54.200.221.217([54.200.221.217]:22)。

debug1:频道0:新建[client-session]

debug1:请求[email protected]

debug1:进入交互式会话。

它卡在那里,然后超时。

这背后的原因是什么?我的体系结构也没有任何缺陷。我不希望使用基于密码的ssh,因为它很容易被黑客入侵。

最佳答案

原因当然是您停止了slapd,而治愈是不这样做的。它应该一直运行。

关于linux - 当slapd守护程序在Openldap服务器上停止时,Openldap客户端计算机挂起,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34614214/

10-12 22:54