考えておこう! OpenLDAPのセキュリティ設定:OpenLDAPで始めるディレクトリサーバ構築(4)(3/3 ページ)
ユーザー情報や組織情報などを一元的に管理するディレクトリサーバは、企業システムの中で重要な役割を果たしています。この連載ではオープンソースの「OpenLDAP」を用いて、ディレクトリサーバの構築・活用方法を解説します。(編集部)
SASLを用いた通信経路の暗号化
ここまでに、SSL/TLSを用いて通信経路を暗号化する方法を説明しました。OpenLDAPの通信経路の暗号化には、SSL/TLSを用いるほか、SASLを用いることもできます。SASLは、認証に必要な情報のやりとりにセキュリティ層を確立しますが、その後のアプリケーションレベルでの通信においても暗号化を継続します。
このSASLには多くの認証機構が提供されており、OpenLDAPのページ(注3)にはGSSAPI/KerberosVを利用する方法、DIGEST-MD5を利用する方法などが紹介されています。今回はGSSAPI/KerberosVの設定に比べて比較的簡単なDIGEST-MD5を利用する方法を基本設定の範囲で説明していきます。
DIGEST-MD5は、CentOSのデフォルトインストールでは含まれませんので、まずは、cyrus-sals-md5パッケージをインストールし、OpenLDAPを再起動しておきましょう(注4)。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
注3:http://www.openldap.org/doc/admin24/sasl.html
注4:DIGEST-MD5暗号方式を用いてSASL認証を行うためには、このcyrus-sals-md5パッケージをLDAPサーバおよびLDAPクライアントとなる両ホストにインストールする必要があります。
DIGEAST-MD5、ディレクトリデータベースを利用する場合
DIGEST-MD5で利用するパスワードは、OpenLDAPサーバの管理するディレクトリデータベースで直接管理できるほか、SASLデータベースに保持することができます。OpenLDAPで直接管理する場合は、登録するエントリのuserPassword属性を利用します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
そして、slapd.conf ファイルのグローバルセクションには次の設定を行います。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
設定後はLDAPサーバを再起動し、簡易認証を意味する「-x」オプションを付与せずに、「-Y」オプションで認証機構と「-U」オプションでユーザー名を指定し、SASL認証が行われることを確認しましょう。以下のように、DIGEST-MD5でのSASL認証が行われている旨のメッセージが表示され、さらにネットワーク上ではチャレンジ&レスポンスのメッセージ交換後に暗号化通信が開始されているはずです。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
DIGEAST-MD5、SASLデータベースを利用する場合
OpenLDAPサーバの管理するバックエンドデータベースにパスワードを保存するのではなく、別途SASLデータベースを用意してパスワードを保管する方式を選択した場合は、SASLデータベースの設定が必要です。ここでは、SASLのレルムに「my-domain.com」を指定し、test1ユーザーとそのパスワードを設定します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
以降のパスワード管理は、saslpassword2コマンドを利用してSASLデータベース上で行うことになるので、slapd.confファイルの「password-hash」ディレクティブは不要になります。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
また今回は、SASLデータベースにパスワードを登録しましたので、以下のuserPassword属性を含まないテスト用ユーザーであるtest1のエントリを登録しておきます。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
エントリの登録後は、test1ユーザーでSASL認証を実行しましょう。SASLデータベース上のユーザー名とパスワードで照合が行われ、次のような結果が返るはずです。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
今回は、OpenLDAPで利用可能なセキュリティ設定を説明してきました。いかがでしたでしょうか。安全なディレクトリサーバ運用を実現するには、運用環境に応じて、こうした設定を適切に行うことが必要になります。
次回は、OpenLDAPの可用性を高めたり、負荷分散を実現するレプリケーション機能について説明します。
Copyright © ITmedia, Inc. All Rights Reserved.