我正在DigitalOcean Droplet上安装Prosody XMPP服务器和Kaiwa webclient。
Kaiwa使用我首先尝试使用Docker的一键式部署到DO-droplet工具,但它没有用 - 可能是因为我使用512MB最小DO VPS并且内存耗尽了一半Docker图像的开始。
我擦除了所有这些图片,为我的Droplet制作了一个1GB的交换文件,现在正按照(建议的)Kaiwa GitHub README进行“手动”安装 - 这实际上是拉动和配置四个Docker镜像:{{1 },postgresql
,slapd
和kaiwa-server
。设置PostgreSQL映像顺利进行,我遇到了LDAP问题。
以下是配置LDAP Docker镜像的说明:
kaiwa
(我省略了一些$ docker pull nickstenning/slapd
$ docker run -d \
--name ldap \
-p 389:389 \
-e LDAP_DOMAIN=myorga \
-e LDAP_ORGANISATION=MyOrganisation \
-e LDAP_ROOTPASS=mypassword \
nickstenning/slapd
$ wget https://raw.githubusercontent.com/digicoop/kaiwa-server/master/users.ldif
$ ldapadd -h localhost -x -D cn=admin,dc=myorga -w mypassword -f users.ldif
命令,用于将users.ldif
中的样本数据替换为个人数据;我对两个数据集都得到了相同的错误。)
运行sed
命令后,我得到了这个:
ldapadd
试验表明,如果我使用用户adding new entry "ou=users,dc=example.com"
ldap_add: Server is unwilling to perform (53)
additional info: no global superior knowledge
和密码ldapadd
来呼叫user1
,或者如果我使用用户user1pass
呼叫但是管理密码错误,我会得到一个不同的错误:
admin
我认为这意味着第二个ldap_bind: Invalid credentials (49)
命令工作,我的LDAP服务器识别传递给docker run
的管理员用户和密码是正确的,但出于某种原因我要求它附加用户到树中不存在的地方。
我之前从未使用过LDAP,而且我可能犯了一些愚蠢的错误。我已经阅读了这个问题(openldap "no global superior knowledge")并且我的问题可能类似 - 但是当我使用开发人员的默认配置文件时,我不会指望存在拼写错误,而我还没有找到我自己。
答案 0 :(得分:1)
您似乎已将LDAP DIT的根命名为dc=myorga
。因此,需要ou=users,DC=example.com
的条目才能生效。你必须相应地改变它。
答案 1 :(得分:0)
对我来说,这是由属性值后面的空格引起的。