• 検索結果がありません。

セキュアな接続の確立 セキュアな接続の確立

ドキュメント内 システムレベルの認証ガイド (ページ 89-92)

第 9 章 LDAP サーバー

9.2. OPENLDAP

9.2.3. OpenLDAP サーバーの設定

9.2.3.6. セキュアな接続の確立 セキュアな接続の確立

OpenLDAP スイートとサーバーは、Transport Layer Security (TLS) フレームワークを使用することで セキュリティー保護ができます。TLS は、ネットワーク上の通信セキュリティーを提供するように設計 された暗号化プロトコルです。Red Hat Enterprise Linux 7 の OpenLDAP スイートは、OpenSSL を

TLS 実装として使用します。

TLS を使用して安全な接続を確立するには、必要な証明書を獲得します。そして、クライアントとサー バーの両方で多くのオプションを設定する必要があります。少なくとも、認証局 (CA) の証明書とそれ 自体のサーバー証明書および秘密鍵で、サーバーを設定する必要があります。クライアントは、信頼で きる CA 証明書すべてを含むファイル名で設定する必要があります。

サーバーは通常、1 つの CA 証明書にのみ署名する必要があります。クライアントは種々の安全なサー バーに接続する可能性があるため、一般的には設定で信頼できるいくつかの CA 一覧を指定します。

サーバー設定 サーバー設定

このセクションでは、TLS を確立するために OpenLDAP サーバー上の

/etc/openldap/slapd.d/cn=config.ldif ファイルで指定する必要のある slapd のグローバル設定ディレ クティブを表示します。

古いスタイルの設定では通常 /usr/local/etc/openldap/slapd.conf としてインストールされる単一ファ イルを使用しますが、新規のスタイルでは slapd バックエンドデータベースを使用して設定を保存しま す。設定データベースは通常 /usr/local/etc/openldap/slapd.d/ ディレクトリーにあります。

以下のディレクティブも SSL を確立するのに有効です。TLS ディレクティブの他にも、サーバー側で SSL 専用ポートを有効にする必要があります (通常はポート 636 になります)。これを実行するに は、/etc/sysconfig/slapd ファイルを編集し、ldaps:/// 文字列を SLAPD_URLS ディレクティブで指定

された URL の一覧に追加します。

olcTLSCACertificateFile

olcTLSCACertificateFile ディレクティブは、信頼できる CA 証明書を含む PEM (Privacy-Enhanced

Mail) スキーマでエンコードされたファイルを指定します。ディレクティブの形式は以下のようにな

ります。

olcTLSCACertificateFile: path

path を CA 証明書ファイルへのパスに置き換えます。

olcTLSCACertificatePath

olcTLSCACertificatePath ディレクティブは、個別ファイルの CA 証明書を含むディレクトリーへ のパスを指定します。このディレクトリーは、OpenSSL c_rehash ユーティリティーで特別に管理 する必要があり、このユーティリティーは実際の証明書ファイルを指すハッシュ化された名前のシ ンボリックリンクを生成します。一般的に、olcTLSCACertificateFile ディレクティブを使用する方 が、より簡易です。

ディレクティブの形式は以下のとおりです。

olcTLSCACertificatePath: path

path を CA 証明書ファイルを含むディレクトリーへのパスに置き換えます。指定されたディレクト

リーは OpenSSL c_rehash ユーティリティーで管理する必要があります。

olcTLSCertificateFile

olcTLSCertificateFile ディレクティブは、slapd サーバー証明書を含むファイルを指定します。

ディレクティブの形式は以下のとおりです。

olcTLSCertificateFile: path

path を slapd サービスのサーバー証明書ファイルへのパスに置き換えます。

olcTLSCertificateKeyFile

olcTLSCertificateKeyFile ディレクティブは、olcTLSCertificateFile で指定されたファイルに保存 されている証明書に適合する秘密鍵を含むファイルを指定します。現在の実装では秘密鍵の暗号化 はサポートされていないことから、この鍵を含むファイルは十分に保護される必要があることに注 意してください。ディレクティブは以下の形式になります。

olcTLSCertificateKeyFile: path

path を秘密鍵ファイルへのパスに置き換えます。

クライアント設定 クライアント設定

以下のディレクティブを、クライアントシステム上の /etc/openldap/ldap.conf 設定ファイルで指定し ます。これらのディレクティブのほとんどは、サーバー設定オプションと並行するもので

す。/etc/openldap/ldap.conf 内のディレクティブは、システム全体ベースで設定されていますが、個 別のユーザーは ~/.ldaprc ファイルでこれを上書きすることができます。

SSL 接続を確立するには同じディレクティブを使用できます。ldapsearch などの OpenLDAP コマンド では、ldap:// ではなく ldaps:// 文字列を使用する必要があります。これにより、コマンドはサーバーで 設定される SSL のデフォルトポートであるポート 636 を使用するように強制されます。

TLS_CACERT

TLS_CACERT ディレクティブは、クライアントが認識するすべての CA 証明書を格納しているファ

イルを指定します。これは、サーバー上の olcTLSCACertificateFile ディレクティブに相当しま す。TLS_CACERT は常に、/etc/openldap/ldap.conf 内の TLS_CACERTDIR の前に指定されなけ ればなりません。ディレクティブの形式は以下のとおりです。

TLS_CACERT path

path を CA 証明書ファイルへのパスに置き換えます。

TLS_CACERTDIR

TLS_CACERTDIR ディレクティブは、個別ファイルにある CA 証明書を含むディレクトリーへのパ

スを指定します。サーバー上の olcTLSCACertificatePath と同様に、指定されたディレクトリーは

OpenSSL c_rehash ユーティリティーで管理する必要があります。

TLS_CACERTDIR directory

directory を CA 証明書ファイルを含むディレクトリーへのパスに置き換えます。

TLS_CERT

TLS_CERT は、クライアントの証明書を格納しているファイルを指定します。この指示文の指定が

できるのは、ユーザーの ~/.ldaprc ファイル内のみです。指示文の形式は以下のとおりです。

TLS_CERT path

path をクライアント証明書ファイルへのパスに置き換えます。

TLS_KEY

TLS_KEY は、TLS_CERT ディレクティブで指定されたファイルに保存されている証明書に適合す

る秘密鍵を格納するファイルを指定します。サーバー上の olcTLSCertificateFile と同様に鍵ファイ ルの暗号化はサポートされないため、ファイル自体は慎重に保護される必要があります。このオプ

ションが設定できるのは、ユーザーの ~/.ldaprc ファイル内のみです。

TLS_KEY ディレクティブの形式は以下のようになります。

TLS_KEY path

path をクライアント証明書ファイルへのパスに置き換えます。

ドキュメント内 システムレベルの認証ガイド (ページ 89-92)