検索
連載

考えておこう! OpenLDAPのセキュリティ設定OpenLDAPで始めるディレクトリサーバ構築(4)(3/3 ページ)

ユーザー情報や組織情報などを一元的に管理するディレクトリサーバは、企業システムの中で重要な役割を果たしています。この連載ではオープンソースの「OpenLDAP」を用いて、ディレクトリサーバの構築・活用方法を解説します。(編集部)

PC用表示
Share
Tweet
LINE
Hatena
前のページへ |       

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.

前のページへ |       
ページトップに戻る