9.2. OPENLDAP
9.2.1.1. LDAP Terminology
以下は、本章で使用される以下は、本章で使用される LDAP 固有の用語の一覧です。固有の用語の一覧です。
エントリーエントリー
LDAP ディレクトリー内に単一のユニット。ディレクトリー内に単一のユニット。各エントリーは、固有の識別名各エントリーは、固有の識別名 (DN)で識別されで識別され ます。
ます。
属性属性
エントリーに直接関連付けられた情報。たとえば、組織がエントリーに直接関連付けられた情報。たとえば、組織が LDAP エントリーとして表現されエントリーとして表現され る場合、この組織に関連付けられている属性にはアドレス、
る場合、この組織に関連付けられている属性にはアドレス、fax 番号などが含まれる可能性がありま番号などが含まれる可能性がありま す。同様に、個人の電話番号やメールアドレスなどの共通の属性を含むエントリーとして表現でき す。同様に、個人の電話番号やメールアドレスなどの共通の属性を含むエントリーとして表現でき ます。
ます。
属性には値を属性には値を 1 つ持つか、順序のないスペースで区切られた値のリストになります。特定の属つ持つか、順序のないスペースで区切られた値のリストになります。特定の属 性は任意ですが、それ以外の属性は必須です。
性は任意ですが、それ以外の属性は必須です。必要な属性はオブジェクトクラス定義を使用して指必要な属性はオブジェクトクラス定義を使用して指 定し
定し、、/etc/openldap/slapd.d/cn=config/cn=schema/ ディレクトリーにあるスキーマファイルにあディレクトリーにあるスキーマファイルにあ ります。
ります。
属性とそれに対応する値のアサーションは、相対識別名属性とそれに対応する値のアサーションは、相対識別名 (RDN)とも呼ばれます。グローバルにとも呼ばれます。グローバルに 一意な識別名とは異なり、相対識別名はエントリーごとにのみ一意です。
一意な識別名とは異なり、相対識別名はエントリーごとにのみ一意です。
LDIF
LDAP データ交換形式データ交換形式(LDIF )は、は、LDAP エントリーのプレーンテキスト形式の表現です。こエントリーのプレーンテキスト形式の表現です。こ れは以下の形式になります。
れは以下の形式になります。
[id] dn: distinguished_name attribute_type: attribute_value…
attribute_type: attribute_value…
…
オプションのオプションの id は、エントリーの編集に使用されるアプリケーションによって決定される数は、エントリーの編集に使用されるアプリケーションによって決定される数 字です。
字です。各エントリーには、対応するスキーマファイルにすべて定義されている限り、必要に応じ各エントリーには、対応するスキーマファイルにすべて定義されている限り、必要に応じ て多くの
て多くの attribute_type とと attribute_value ペアを含めることができます。空白行はエントリーの最ペアを含めることができます。空白行はエントリーの最 後を示します。
後を示します。
9.2.1.2. OpenLDAP の機能の機能
OpenLDAP スイートは、以下のような重要な機能を提供します。スイートは、以下のような重要な機能を提供します。
LDAPv3 サポートサポート: LDAP バージョンバージョン 2 はは LDAP をセキュアにするように設計されていまをセキュアにするように設計されていま す。たとえば、これには、
す。たとえば、これには、Simple Authentication and Security Layer(SASL)、、Transport Layer Security(TLS)、および、および Secure Sockets Layer(SSL)プロトコルのサポートが含まれまプロトコルのサポートが含まれま す。
す。
LDAP Over IPC - プロセス間の通信プロセス間の通信(IPC)を使用すると、ネットワーク経由で通信する必を使用すると、ネットワーク経由で通信する必 要がなくなります。
要がなくなります。
IPv6 サポートサポート: OpenLDAPは、インターネットプロトコルの次世代であるインターネッは、インターネットプロトコルの次世代であるインターネッ トプロトコル
トプロトコルバージョンバージョン 6(IPv6)に準拠しています。に準拠しています。
LDIFv1 サポートサポート - OpenLDAP はは LDIF バージョンバージョン 1 に完全に準拠しています。に完全に準拠しています。
Update C API: 現在の現在の C API は、プログラマーがは、プログラマーが LDAP ディレクトリーサーバーに接続ディレクトリーサーバーに接続 し、使用する方法を向上します。
し、使用する方法を向上します。
強化されたスタンドアロン強化されたスタンドアロン LDAP サーバー:サーバー:これには、更新されたアクセス制御システこれには、更新されたアクセス制御システ ム、スレッドプール、優れたツールなどが含まれます。
ム、スレッドプール、優れたツールなどが含まれます。
9.2.1.3. OpenLDAP サーバーの設定サーバーの設定
Red Hat Enterprise Linux でで LDAP サーバーを設定する一般的な手順は以下のとおりです。サーバーを設定する一般的な手順は以下のとおりです。
1.
OpenLDAP スイートをインストールします。「スイートをインストールします。「OpenLDAP Suite のインストール」のインストール」。。
2.
「「OpenLDAP サーバーの設定」。サーバーの設定」。
3.
の説明に従って、の説明に従って、slapd 「「OpenLDAP サーバーの実行」。サーバーの実行」。
4.
ldapadd ユーティリティーを使用して、ユーティリティーを使用して、LDAP ディレクトリーにエントリーを追加しまディレクトリーにエントリーを追加しま す。
す。
5.
ldapsearch ユーティリティーを使用して、ユーティリティーを使用して、slapd サービスが正しく情報にアクセスしてサービスが正しく情報にアクセスして いることを確認します。
いることを確認します。
9.2.2. OpenLDAP Suite のインストールのインストール
OpenLDAP ライブラリーおよびツールスイートは、以下のパッケージで提供されます。ライブラリーおよびツールスイートは、以下のパッケージで提供されます。
表
表9.1 OpenLDAP パッケージの一覧パッケージの一覧 パッケージ
パッケージ 説明説明
openldap OpenLDAP サーバーおよびクライアントアプリケーションの実サーバーおよびクライアントアプリケーションの実 行に必要なライブラリーを含むパッケージ。
行に必要なライブラリーを含むパッケージ。
openldap-clients LDAP サーバーでディレクトリーを表示および変更するコマンサーバーでディレクトリーを表示および変更するコマン ドラインユーティリティーを含むパッケージ。
ドラインユーティリティーを含むパッケージ。
openldap-servers LDAP サーバーを設定して実行するサービスおよびユーティリサーバーを設定して実行するサービスおよびユーティリ ティーの両方を含むパッケージ。
ティーの両方を含むパッケージ。これには、スタンドアロンのこれには、スタンドアロンの LDAP Daemon (slapd )が含まれます。が含まれます。
compat-openldap OpenLDAP 互換ライブラリーを含むパッケージ。互換ライブラリーを含むパッケージ。
また、また、LDAP サーバーと共によく使用されるパッケージは以下のとおりです。サーバーと共によく使用されるパッケージは以下のとおりです。
表
表9.2 一般的にインストールされている追加の一般的にインストールされている追加の LDAP パッケージの一覧パッケージの一覧 パッケージ
パッケージ 説明説明
nss-pam-ldapd ユーザーがローカルのユーザーがローカルの LDAP クエリーを実行できるようにするクエリーを実行できるようにする ローカル
ローカル LDAP ネームサービスであるネームサービスである nslcd を含むパッケーを含むパッケー ジ。
ジ。
mod_ldap
mod_authnz_ldap モジュールおよびモジュールおよび mod_ldap モジューモジュー ルを含むパッケージ。
ルを含むパッケージ。mod_authnz_ldap モジュールは、モジュールは、
Apache HTTP Server のの LDAP 認証モジュールです。このモ認証モジュールです。このモ ジュールは
ジュールは LDAP ディレクトリーに対してユーザーの認証情報ディレクトリーに対してユーザーの認証情報 を認証でき、ユーザー名、完全な
を認証でき、ユーザー名、完全な DN、グループメンバーシッ、グループメンバーシッ プ、任意の属性、または完全なフィルター文字列に基づいてアク プ、任意の属性、または完全なフィルター文字列に基づいてアク セス制御を強制できます。同じパッケージに含まれる
セス制御を強制できます。同じパッケージに含まれる mod_ldap モジュールは、設定可能な共有メモリーキャッシュを提供し、多 モジュールは、設定可能な共有メモリーキャッシュを提供し、多 くの
くの HTTP リクエスト全体でディレクトリーアクセスの繰り返しリクエスト全体でディレクトリーアクセスの繰り返し や
や SSL/TLS のサポートを防ぎます。このパッケージはのサポートを防ぎます。このパッケージは Optional チャンネルにより提供されることに注意してください。
チャンネルにより提供されることに注意してください。Red Hat
『
『追加チャンネルの詳細は、『システム管理者のガイド』の追加チャンネルの詳細は、『システム管理者のガイド』の
https://access.redhat.com/documentation/en-
US/Red_Hat_Enterprise_Linux/7/html- single/System_Administrators_Guide/index.html#sec-Adding_the_Optional_and_Supplementary_Repositories
「
「Optional およびおよび Supplementary リポジトリーの追加』リポジトリーの追加』」を」を 参照してください。
参照してください。
これらのパッケージをインストールするには、以下の形式でこれらのパッケージをインストールするには、以下の形式で yum コマンドを使用します。コマンドを使用します。
yum install package…
たとえば、基本的なたとえば、基本的な LDAP サーバーのインストールを実行するには、シェルプロンプトで以下を入サーバーのインストールを実行するには、シェルプロンプトで以下を入 力します。
力します。
~]# yum install openldap openldap-clients openldap-servers
このコマンドを実行するにはスーパーユーザー権限(つまりこのコマンドを実行するにはスーパーユーザー権限(つまり rootでログインしている必要がある)でログインしている必要がある)
が存在する必要があることに注意してください。
が存在する必要があることに注意してください。Red Hat Enterprise Linux 『『に新しいパッケージをに新しいパッケージを