web-dev-qa-db-ja.com

CentOS 7へのOpenLDAPのインストール

私はfに従って、このOpenLDAPの段階的なチュートリアルを実行しています: http://www.server-world.info/en/note? os = CentOS_7&p = openldap&f = 1重要:CentOS 7に取り組んでいます

しかし、最初の部分で私はslapdを次のように開始しようとします:systemctl start slapd、それは私に解決できないerrorを投げます。

Web、StackOverflow、Server Faultで探しましたが、誰もが同じ問題を抱えています。

これはエラーです:

# systemctl start slapd
Job for slapd.service failed. See 'systemctl status slapd.service' and 'journalctl -xn' for details.

そして、ここでスタックトレースまたはsystemctl status

 [root@localhost openldap]# systemctl status slapd -l
    slapd.service - OpenLDAP Server Daemon
       Loaded: loaded (/usr/lib/systemd/system/slapd.service; disabled)
       Active: failed (Result: exit-code) since dv 2015-01-09 12:03:41 CET; 3min 9s ago
      Process: 5507 ExecStart=/usr/sbin/slapd -u ldap -h ${SLAPD_URLS} $SLAPD_OPTIONS (code=exited, status=1/FAILURE)
      Process: 5492 ExecStartPre=/usr/libexec/openldap/check-config.sh (code=exited, status=0/SUCCESS)

    gen 09 12:03:41 localhost.localdomain runuser[5495]: pam_unix(runuser:session): session opened for user ldap by (uid=0)
    gen 09 12:03:41 localhost.localdomain check-config.sh[5492]: Checking configuration file failed:
    gen 09 12:03:41 localhost.localdomain check-config.sh[5492]: 54afb58d ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif"
    gen 09 12:03:41 localhost.localdomain check-config.sh[5492]: 54afb58d unable to open file "/openldap/slapd.pid": 2 (No such file or directory)
    gen 09 12:03:41 localhost.localdomain slapcat[5500]: DIGEST-MD5 common mech free
    gen 09 12:03:41 localhost.localdomain slapd[5507]: @(#) $OpenLDAP: slapd 2.4.39 (Jun  9 2014 23:23:12) $
                                                               [email protected]:/builddir/build/BUILD/openldap-2.4.39/openldap-2.4.39/servers/slapd
    gen 09 12:03:41 localhost.localdomain slapd[5509]: DIGEST-MD5 common mech free
    gen 09 12:03:41 localhost.localdomain systemd[1]: slapd.service: control process exited, code=exited status=1
    gen 09 12:03:41 localhost.localdomain systemd[1]: Failed to start OpenLDAP Server Daemon.
    gen 09 12:03:41 localhost.localdomain systemd[1]: Unit slapd.service entered failed state.

私の質問は、どうすればよいですか?何か解決策はありますか?または、問題を修正するために従うべきガイドラインは何ですか?

どうすればこれを解決できますか?

2
Neil

CentOS OpenLDAPヘルプページ を使用します。それは非常に簡潔で、綿毛はありません。その前に、すべての構成ファイルを元の状態に戻してください。経由で確認できます:

# rpm -V openldap-server

上記のコマンドで変更されたファイルが表示された場合は、openldap-serverを削除して再インストールするか、バックアップからファイルをフェッチしてください。

2
Droopy4096

また、このガイドを使用して、CentOS 7でOpenLDAPを設定しました。クライアントなしでopenldap-serversをインストールしただけで、完全に失敗しました。権限の問題やslapdの起動の失敗などがありました。最初からやり直して指示に正確に従うことについては、他の人にも同意します。

しかし、それでも、ガイドに文書化しておくと役立ついくつかの問題があります。

  • ガイドからldifファイルにコピーアンドペーストする場合は、折り返されている行を修正してください。エラーが発生しました(特にchdomain.ldif)。
  • basedomain.ldifでは、o: Server Worldおよびdc: Serverを正しいドメインに変更する必要があります。そうしないと、次のエラーが発生します。

    ldap_add:ネーミング違反(64)追加情報:単一値のネーミング属性 'dc'の値がエントリに存在する値と競合しています

  • 最後のldapaddコマンドも正しいドメインに変更する必要があります。そうしないと、無効な資格情報エラーが発生します。

これらのエラーは実際には直感的ではありませんでしたが、ガイドを完了してOpenLDAPを構成することができました。

1
Ben Brian

設定ファイルになんらかのエラーがあります。少なくとも、初期構成ファイルの作成時にエラーが発生し、おそらくチュートリアルで述べられている内容が変更されました。

チュートリアルは次のように述べています:

 pidfile     /run/openldap/slapd.pid

ただし、OpenLDAPは/openldap/slapd.pidを作成しようとします。これは、/openldapがディレクトリとして存在しないため機能しません。

ゼロからやり直します。

0
Sven