OpenLDAP ライブラリとツールのセットは以下のパッケージに分配されています。
openldap — OpenLDAPサーバーとクライアント アプリケーションを実行するのに必要なライブラリを含んでいます。
openldap-clients — LDAPサーバー上で ディレクトリの表示と変更の為のコマンドラインツールを含んでいます。
openldap-servers — LDAPサーバーの設定と 実行に必要なサーバーと他のユーティリティを含んでいます。
2種類のサーバーがopenldap-serversパッケージの中に 含まれています: スタンドアロン LDAP デーモン (/usr/sbin/slapd)とスタンドアロン LDAP 更新複製 デーモン(/usr/sbin/slurpd)です。
slapdデーモンはスタンドアロン LDAPサーバーであり、 slurpdデーモンはネットワーク上の1つのLDAPサーバーから 別のLDAPサーバーへの変更を同期するのに使用されます。slurpdデーモンは 複数のLDAPサーバーを利用している時にのみに使用されます。
管理の作業をするには、openldap-serversパッケージが /usr/sbin/ディレクトリへ、以下のユーティリティを インストールする必要があります:
slapadd — LDIFファイルから LDAPディレクトリへエントリを追加します。例えば、/usr/sbin/slapadd -l ldif-inputコマンドは 新規のエントリを 含むLDIFファイル、ldif-inputで読み込みます。
slapcat — デフォルトフォーマットの Berkeley DB のLDAPディレクトリからエントリを取り出して、 LDIFファイルの中に保存します。 例えば、/usr/sbin/slapcat -lldif-output コマンドは、LDAPディレクトリからのエントリを含む ldif-outputという LDIFファイルを出力します。このコマンドは、 Red Hat Enterprise Linux 3 及び Red Hat Linux 9 稼動環境下で作成されるディレクトリに機能します。
slapcat-gdbm — gdbm 形式(OpenLDAPの初期バージョン でのデフォルト)のLDAPディレクトリからエントリを取り出し、 LDIF ファイルの中に保存します。このコマンドは、Red Hat Enterprise Linux 2.1 及び Red Hat Linux バージョン7.x からバージョン8までの環境下で実装されているOpenLDAP からディレクトリを移行する手段として単独で提供されます。 このコマンドの使い方については、項13.8 を参照してください。
slapindex — 現在のコンテンツに基づいて slapdディレクトリの索引を再構成します。 このツールは、/etc/openldap/slapd.conf内の インデックスオプションが変更されるたびに実行する必要があります。
slappasswd — ldapmodifyで使う 暗号化されたユーザーパスワードの値、 あるいはslapdの設定ファイル/etc/openldap/slapd.conf のrootpw値を生成します。 パスワードを作成するには、/usr/sbin/slappasswdコマンドを実行します。
![]() | 警告 |
---|---|
slapadd、slapcat、slapindexを使う前に、/usr/sbin/service slapd stopを発行して 必ずslapdを停止させてください。 そうしないとLDAPディレクトリの一貫性を失う可能性があります。 |
これらのユーティリティの使用方法の詳細については、それぞれのmanページを参照してください。
openldap-clientsパッケージは、LDAPディレクトリのエントリを 追加、変更、削除するのに使う/usr/bin/の中へツールをインストール します。これらのツールには以下の項目が含まれます:
ldapadd — ファイル又は標準入力からの入力を受け付け、LDAPディレクトリにエントリを追加します。ldapaddは実際には ldapmodify -aへのハードリンクです。
ldapdelete — シェルプロンプトでのユーザー入力か ファイルからの入力を受け付け、LDAPディレクトリからエントリを削除します。
ldapmodify — ファイル又は標準入力からの入力を受け付け、 LDAPディレクトリのエントリを変更します。
ldappasswd — LDAPユーザーのパスワードを設定します。
ldapsearch— shellプロンプトを使用して LDAPディレクトリ内のエントリを検索します。
ldapsearchを例外として、これらのユーティリティは LDAPディレクトリで変更をしたいそれぞれのエントリ用のコマンドをタイプするのでなく、 変更したいファイルを参照するのでより簡単に使用できます。このような ファイルの形式については、それぞれのユーティリティの man ページに概要があります。
OpenLDAPパッケージに加えて、Red Hat Enterprise Linux には、Linux及び他のUNIX環境に統合するために LDAPの機能を強化するnss_ldapと呼ばれるパッケージが 含まれています。
nss_ldapパッケージは、以下のモジュールを提供します:
/lib/libnss_ldap-<glibc-version>.so
/lib/security/pam_ldap.so
libnss_ldap-<glibc-version>.soモジュールにより、アプリケーションは、glibcのNameservice Switch (NSS)インターフェースを経由した LDAPディレクトリを使用してユーザー、グループ、ホスト、そしてその他の情報を検索できます (<glibc-version>には、使用している libnss_ldapのバージョンを入れます)。NSSは、 アプリケーションがネットワーク情報サービス (NIS) ネームサービスと単層の認証ファイルとと共にLDAP使用して認証できるようにします。
pam_ldapモジュールの使用で、PAM-認識のアプリケーションが LDAPディレクトリ内に保存してある情報を使用してユーザーを認証することができます。 PAM-認識のアプリケーションには、コンソールログイン、POPとIMAPのメールサーバー、 及びSambaが含まれます。ネットワーク上でLDAPサーバーを起用することにより、 これらのアプリケーションのすべてが、同じユーザーIDとパスワードの組合せを使用して 認証できるようになり、管理が大幅に簡略化します。
Red Hat Enterprise Linux には、PHPサーバーサイド スクリプト言語用の LDAPモジュールを 収納したパッケージが含まれています。
php-ldapパッケージは/usr/lib/php4/ldap.so モジュールを経由してPHP4 HTML埋め込型のスクリプト言語へ LDAP サポートを 追加します。このモジュールにより PHP4スクリプトは、LDAPディレクトリに 保存されている情報にアクセスできます。
Red Hat Enterprise Linux は Apache HTTP サーバーのmod_authz_ldap モジュールと共に送られます。このモジュールはサブジェクトに対するdistinguished name(区別名)の略式を使用し、 クライアントSSL証明書の発行元がLDAPディレクトリ内のユーザーのdistinguished name(区別名)を判定します。 また、ユーザーのLDAPディレクトリエントリの属性を基にユーザーを許可することもでき、 アセットのユーザー/グループ特権を基にアセットへのアクセスを判定します。その時、 パスワードが期限切れのユーザーはアクセスが拒否されます。mod_authz_ldapモジュールを使用する時は mod_sslモジュールが必要となります。
![]() | 重要 |
---|---|
mod_authz_ldapモジュールは暗号化パスワードハッシュ を使用してLDAPディレクトリのユーザー認証を行ないません。 この機能は実験的なmod_auth_ldapモジュール にて提供され、Red Hat Enterprise Linuxには含まれていません。 このモジュールの状況の詳細は、 Apache Software Foundationのwebサイト、 http://www.apache.org/を参照してください。 |
ディレクトリの作成と変更をサポートするグラフィカルなLDAPクライアントが ありますが、 Red Hat Enterprise Linuxでは配付されていません。このようなアプリケーションの 1つがLDAP Browser/Editorです。— Javaベースの ツールでオンラインのhttp://www.iit.edu/~gawojar/ldapで入手できます。
他のLDAPクライアントのほとんどは読み込み専用でディレクトリにアクセスし、 組織全体の情報を参照するのに使用しますが、変更はしません。 このようなアプリケーションの例としては、Sendmail、 Mozilla、Gnome Meeting、 Evolutionがあります。