Ldap

Debian 9:無法使用 ldapi 協議聯繫 LDAP 伺服器

  • October 4, 2018

在我的客戶端上進行 pam 身份驗證(libnss-ldap 和 libpam-ldap 包和配置)有一個配置導致我

nss_ldap: failed to bind to LDAP server ldapi://172.16.10.174/: Can't contact LDAP server

我的伺服器啟動如下(似乎ldapi可用):

● slapd.service - LSB: OpenLDAP standalone server (Lightweight Directory Access Protocol)
Loaded: loaded (/etc/init.d/slapd; generated; vendor preset: enabled)
Active: active (running) since Thu 2018-10-04 09:40:14 -03; 8min ago
   Docs: man:systemd-sysv-generator(8)
Process: 1026 ExecStart=/etc/init.d/slapd start (code=exited, status=0/SUCCESS)
   Tasks: 3 (limit: 4915)
CGroup: /system.slice/slapd.service
       └─1180 /usr/sbin/slapd -h ldap:/// ldapi:/// -g openldap -u openldap -F /etc/ldap/slapd.d

使用 ldap它可以工作

ldapsearch -H ldap://172.16.10.174/ -b dc=myDomain,dc=local -x

但是在本地主機上或區域網路內的機器上都沒有 ldapi :

ldapsearch -H ldapi://localhost:389 -b dc=solarity,dc=local -x
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)`

我應該更改伺服器的配置以能夠與客戶端連接ldapi://或更改客戶端以進行身份驗證ldap://嗎?

  1. 客戶: nssd的debian 9中的配置文件在哪裡,以便我可以將協議更改為ldap而不是ldapi?
  2. 伺服器:如果有任何使用 ldapi 協議的感覺,我該如何測試它並配置伺服器以執行我的客戶端所期望的操作(ldapsearch -H ldapi://172.16.10.174/ -b dc=solarity,dc=local -x不起作用)

ldapi://協議用於通過文件系統套接字訪問 LDAP 伺服器,例如/var/run/ldapi(對於 Debian,這可能不同,這是 CentOS 上的預設位置)。因此,它僅在您與 LDAP 伺服器本身位於同一主機上時才有效。

如果您需要從其他機器訪問 LDAP 伺服器,最好使用ldap://ldaps://

根據wiki.debian.org/LDAP/NSSwiki.debian.org/LDAP/PAM它應該/etc/libnss-ldap.conf分別/etc/pam_ldap.conf

引用自:https://serverfault.com/questions/933964