2016-09-29 9 views
0

私は既にFreeIPAをユーザ認証に使用しているシステムでOpenLDAPサーバを設定しています。目的は、スプリングアプリケーションの認証方法を提供することです。OpenLDAPで楽しい

ldapaddコマンドとldapmodifyコマンドを実行するときに奇妙なことに気づいています。これは誤ったパスワードに関連している可能性があるので、olcRootPWを更新しようとしました。

私はROOTDNアカウントと現在のROOTDNパスワードハッシュを見つけるために、良いアイデアかもしれないと思った:

sudo ldapsearch -H ldapi:// -LLL -Q -Y EXTERNAL -b "cn=config" "(olcRootDN=*)" dn olcRootDN olcRootPW 

これは返さ:

dn: olcDatabase={2}hdb,cn=config 
olcRootDN: cn=Manager,dc=myldap,dc=local 
olcRootPW: {SSHA}6amwprJqmgudYDYPbJaO3BgeAp6898 

をこれまでのところは良いので、更新ができますldifファイルのパスワード - newpass.ldif:

dn: olcDatabase={2}hdb,cn=config 
changetype: modify 
replace: olcRootPW 
olcRootPW: {SSHA}KPxel+B7Ua6Q9PPaM7xdaGSDqK0A1234 

このコマンドを実行します。

​​

これまでのところは良い、我々は成功メッセージを取得:

SASL/EXTERNAL authentication started 
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth 
SASL SSF: 0 
modifying entry "olcDatabase={2}hdb,cn=config" 

そのこのLDIFで、通常のDITでのパスワードを変更することをお勧め:

dn: cn=Manager,dc=myldap,dc=local 
changetype: modify 
replace: userPassword 
userPassword: {SSHA}KPxel+B7Ua6Q9PPaM7xdaGSDqK0A1234 

Iをこのldifを次のコマンドで適用します。

sudo ldapmodify -a -v -H ldap:/// -x -D "cn=Manager,dc=myldap,dc=local" -W -f ~/newpasswd.ldif 

次の失敗:

ldap_initialize(ldap://:389/??base) 
Enter LDAP Password: 
replace userPassword: 
    {SSHA}KPxel+B7Ua6Q9PPaM7xdaGSDqK0A1234 
modifying entry "cn=Manager,dc=myldap,dc=local" 
ldap_modify: No such object (32) 

「-D」スイッチを使用したとき、私は、この多くのことを見ていると私は何が起こっているかを把握することはできませんか?

このLDIFを追加するとき、私は同じことを見た:

sudo ldapadd -x -D cn=Manager,dc=myldap,dc=local -W -f baseldapdomain.ldif 

Enter LDAP Password: 
ldap_bind: No such object (32) 

任意のアイデアを:このコマンドを実行する

dn: dc=myldap,dc=local 
objectClass: top 
objectClass: dcObject 
objectclass: organization 
o: myldap.local 

dc: myldap 
dn: cn=Manager,dc=myldap,dc=local 
objectClass: organizationalRole 
cn: Manager 
description: Directory Manager 

dn: ou=People,dc=myldap,dc=local 
objectClass: organizationalUnit 
ou: People 

dn: ou=Group,dc=myldap,dc=local 
objectClass: organizationalUnit 
ou: Group 

はエラーを与えますか?

答えて

0

私は、アプリケーションと同じホスト上のOpenLDAPを実行し、別のローカルポート上でslapdを実行することを決定した:

sudo /usr/sbin/slapd -u ldap -h "ldapi:/// ldap:/// ldap://localhost:9090" 

LDIFファイルを適用するときに、この作品:

sudo ldapadd -x -D cn=Manager,dc=cdfldap,dc=local -H ldap://localhost:9090 -W -f baseldapdomain.ldif 

Iまだカスタムポートでsystemdを使用してslapdを起動することに問題はありますが、それは今のところ待つことができます。

+0

サービスファイルから///ホストを削除すると、カスタムポートの設定が有効になりました。[単位] 説明=カスタムOpenLDAPサービス =ネットワーク以降。ターゲット [サービス] タイプ= 再起動をfork =常に RestartSec = 5S StandardOutput = はStandardError = syslogの ExecStart =は/ usr/sbinに/のslapd -h "LDAP:// LDAP_IP:9090" のsyslog ユーザー= LDAPを [インストール] WantedBy = multi-user.target – Chris

関連する問題