【図解】初心者にも分かるLDAP入門~仕組みや認証/連携の具体例、ADやデータベースとの違い~

スポンサーリンク
スポンサーリンク

LDAPとは?何ができる?

LDAP(読み方:えるだっぷ)とは Lightweight Directory Access Protocol の略で、簡単に言うとシステムを使う人たちの情報を保管しているデータベースです。

LDAPでは主に『LDAP認証』や『LDAP連携』といった仕組みにより様々なことが実現できます。よく使われるものとして以下の機能があります。

1. Linuxのシステムアカウント情報(/etc/passwd や /etc/shadow)の一元化

多数のLinuxクライアントがある場合、1台1台にIDパスワード情報を入れることなく、LDAPサーバ1台だけ登録すれば、どのLinuxクライアントからも同じIDパスワードでログインできるようになり、さらに環境(プロファイル)もログイン時に取得できるようになります。

2. Linuxサーバの各種アプリでのIDパスワード統一化

例えばpostfixやdovecot等のメールサーバや、ログインが必要なWeb(Apache)ベースのアプリサーバのIDパスワード情報を統一化することができます。さらにこの発展形として、シングルサインオン(1つのサーバで認証すれば、他のサーバは認証無しでログインできる仕組み)も実装できます。

3. 社員情報の共有

例えばLDAPサーバに氏名、メールアドレス、電話番号、所属部署などの情報も格納しておきます。そして、別のLinuxサーバに、Cybozu等のグループウェアサーバをインストールし、適切な設定を入れます。そして、ユーザがグループウェアにログインし、検索画面で他の人の氏名を入力し検索ボタンを押すと、その人のメールアドレスや電話番号、所属部署を表示させるように構成することができます。

4. アカウント自動作成等のLDAP連携

例えば同じようにグループウェアサーバサーバ側でLDAP連携の設定を入れておくことで、グループウェアサーバ側にアカウント設定を入れなくても、LDAPにアカウントが登録されていれば、初回サーバログイン時に、LDAPに認証した結果がOKであれば自動でアカウントを作成する、といった構成が可能です。

スポンサーリンク

その他にも、postfixとの連携で、ユーザ(メールアドレス)によってSMTPリレー先を変えたり、sambaとの連携でアクセス権の一元管理が出来たりと、連携の幅は広いです。

LDAPとデータベースとの違いは?

データベース(Relational Database)では頻繁に更新が行われ、かつ1つのデータベーステーブル内の1レコードを更新した際に、別のテーブルが更新されることも多く、それらの一連の処理をトランザクションとして一貫性・整合性を管理しています。なので、複雑なテーブル構造の更新処理に適している反面、負荷が大きいです。

一方、LDAPは簡単なツリー構造となっており、データベースのような複雑な構造は取れません。その分、負荷が軽いため、システムアカウントの管理には適しています。

データベースは1日のうちに複数回更新することが前提ですが、LDAPは数日に1回程度を想定しています。

スポンサーリンク

LDAPとAD(Active Directory)との違いは?

Active Directory のドメインコントローラは内部で LDAP を使っています。これはOpenLDAPとは異なるMS独自のものですが、RFC 4511に準拠したものとなっています。

ですがActive Directory にとってLDAPとは、Active Directory というソリューションを構成するためのコンポーネントの1つに過ぎません。ADにはグループポリシーといったWindowsクライアントの管理制御機能が標準で付いていたりと、通常のLDAPサーバ以上のことができます。また、ADではユーザアカウントだけでなくコンピュータアカウント(いわゆる、ドメインに参加しているクライアント)を持っていることも特徴的です。

Active Directory では、OpenLDAPの例で示した連携がたいてい可能です。OpenLDAPがLinuxクライアントに特化しているのに対し、Active Directory ではWindowsに特化したものとなっています。

ドメインコントローラはこれに加えファイルサーバへのアクセス制御を一元的に行う(例えば複数のファイルサーバがある場合、通常は各サーバにアカウント情報を登録し、その上でアクセス権の設定を行うが、AD環境においては、アクセス制御用のアカウント情報はADにて管理してあるため、各サーバにアクセス権を設定するだけでよい)ことが標準で可能となっています(OpenLDAPでもsambaサーバとの連携で同様のことが可能)。また、グループポリシーによるWindowsクライアントの統合的な管理(例えばWindowsファイアウォールやスクリーンセイバーの設定を強制する、等)も可能です。

スポンサーリンク
スポンサーリンク
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサーリンク