1.8. Directory Server が使用する CA 証明書の Red Hat Enterprise Linux のトラストストアへの追加

Directory Server で TLS 暗号化を有効にすると、CA が発行した証明書を使用するようにインスタンスを設定します。クライアントが LDAPS プロトコルまたは LDAP 上の STARTTLS コマンドを使用してサーバーへの接続を確立する場合、Directory Server はこの証明書を使用して接続を暗号化します。クライアントユーティリティーは CA 証明書を使用して、サーバーの証明書が有効であるかどうかを確認します。デフォルトでは、これらのユーティリティーは、サーバーの証明書を信頼していない場合に接続を取り消します。

例1.1 クライアントユーティリティーが CA 証明書を使用しない場合の接続エラーの可能性

  • dsconf

    # dsconf -D "cn=Directory Manager" ldaps://server.example.com:636 config get
    Error: {'desc': "Can't contact LDAP server", 'info': 'error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed (self signed certificate in certificate chain)'}
  • ldapsearch

    # ldapsearch -H ldaps://server.example.com:636 -D "cn=Directory Manager" -W -b "dc=example,dc=com" -x
    Enter LDAP Password:
    ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)

Red Hat Enterprise Linux でクライアントユーティリティーを有効にして Directory Server が使用する証明書を検証するには、オペレーティングシステムのトラストストアに CA 証明書を追加します。

前提条件

  • ネットワークセキュリティーサービス (NSS) データベースのパスワードを知っている。

    Directory Server インスタンスのインストール時に生成されたパスワードを使用する場合は、/etc/dirsrv/slapd-instance_name/pwdfile.txt ファイルでこのパスワードをプレーンテキストで特定する。

手順

  1. Directory Server が使用する CA 証明書のローカルコピーがない場合は、以下を実行します。

    1. サーバーのネットワークセキュリティーサービス (NSS) データベースで証明書をリスト表示します。

      # certutil -d /etc/dirsrv/slapd-instance_name/ -L
      
      Certificate Nickname                       Trust Attributes
                                                 SSL,S/MIME,JAR/XPI
      
      Example CA                                 C,,
      Server-Cert                                u,u,u
    2. NSS データベースの CA 証明書のニックネームを使用して、CA 証明書をエクスポートします。

      # certutil -d /etc/dirsrv/slapd-instance_name/ -L -n "Example CA" -a > /tmp/ds-ca.crt
  2. CA 証明書を /etc/pki/ca-trust/source/anchors/ ディレクトリーにコピーします。

    # cp /tmp/ds-ca.crt /etc/pki/ca-trust/source/anchors/
  3. CA 信頼データベースを再構築します。

    # update-ca-trust

検証

  • LDAPS プロトコルを使用して Directory Server への接続を確立します。たとえば、クエリーを実行します。

    # ldapsearch -H ldaps://server.example.com:636 -D "cn=Directory Manager" -W -b "dc=example,dc=com" -x -s base

関連情報

  • update-ca-trust(8) の man ページ