OpenLDAP应用程序认证的本地配置

问题描述:

我已经在运行FreeIPA的Centos 7服务器上安装了openLDAP用于用户认证。 http://www.tecmint.com/setup-ldap-server-and-configure-client-authenticationOpenLDAP应用程序认证的本地配置

openLDAP的目的是让Nodejs应用程序管理应用程序的用户。并将在单独的服务器上运行。

我可以看到的slapd运行(PS英法| grep的slapd的):

ldap  1287  1 0 06:40 ?  00:00:00 /usr/sbin/slapd -u ldap -h ldapi:/// ldap:/// 

所以我试图改变使用ldapadd命令的缺省值,我怀疑被连接到FreeIPA LDAP是在包装盒上的配置(使用-x -h它的一些coammands是要求已尚未设置密码):

sudo ldapadd -H ldapi:/// -f ldaprootpasswd.ldif 

SASL/GSS-SPNEGO authentication started 
ldap_sasl_interactive_bind_s: Local error (-2) 
     additional info: SASL(-1): generic failure: GSSAPI Error: Unspecified GSS failure. Minor code may provide more information (SPNEGO cannot find mechanisms to negotiate) 

如果我运行的ldapsearch然后我似乎能够连接到openLDAP:

sudo ldapsearch -H ldapi:/// -Y EXTERNAL -b "cn=config" "(olcRootDN=*)" olcSuffix olcRootDN olcRootPW -LLL -Q 
dn: olcDatabase={2}hdb,cn=config 
olcSuffix: dc=my-domain,dc=com 
olcRootDN: cn=Manager,dc=my-domain,dc=co 

我想也许我可以使用Windows LDAP工具进行外部连接,但出现连接错误。我确实确认该端口是开放的并且可以在外部看到。

nmap -p 389 10.18.16.243 

Starting Nmap 7.12 (https://nmap.org) at 2016-09-28 11:25 GMT Daylight Time 
Nmap scan report for 10.18.16.243 
Host is up (0.00s latency). 
PORT STATE SERVICE 
389/tcp filtered ldap 
MAC Address: BB:BB:BB:BB:BB:00 (Unknown) 

Nmap done: 1 IP address (1 host up) scanned in 19.92 seconds 

我尝试使用,而不是-H -h:

sudo ldapadd -a -x -h localhost -p 389 -D cn=Manager,dc=my-domain,dc=com -W -f ldaprootpasswd.ldif 

这提示我输入密码,但我刚刚才安装OpenLDAP和没有设置密码,但(olcRootPW是在ldif文件我试图申请)。

有没有人有使用openLDAP的用户身份验证经验,或有任何想法什么配置需要更改以使其运行?

的秘密咒语是:

sudo ldapmodify -a -Q -Y EXTERNAL -H ldapi:/// -f ldaprootpasswd.ldif 

由于使用的ldapmodify这将是与上面相同,当 “-a” 势力添加新条目:

sudo ldapadd -Q -Y EXTERNAL -H ldapi:/// -f ldaprootpasswd.ldif 

“-Q” - 启用SASL安静模式。从不提示。

“-Y” - 指定要用于认证的SASL机制。如果没有指定,程序将选择服务器知道的最佳机制。