マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】OpenLDAP

【OSS情報アーカイブ】OpenLDAP

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「OpenLDAP」とは

「OpenLDAP」基本情報

■概要

OpenLDAP(オープンエルダップ)とは、ディレクトリサービスを提供するオープンソースLDAPサーバです。

■基本説明

OpenLDAPは、LDAP(Lightweight Directory Access Protocol)のオープンソース実装で、インターネットコミュニティによって開発されたディレクトリソフトウェアスイートです。

OpenLDAPは、サーバ間やシステム間で認証連携を行い、ユーザー情報データベースを統合管理してシングルサインオンを実現するための共通基盤となります。ディレクトリ情報の一元管理により、運用管理の作業負荷を大幅に削減し、セキュリティを強化できます。

「LDAP Ver.3準拠」「SASL認証対応」「複数LDAPサーバ間でのレプリケーション機能」「OpenSSLと組み合わせたTLS/SSL対応」など豊富な機能を持ちます。

■主要開発元

OpenLDAPは、オープンソースLDAP開発を促進するための憲章を持つ非営利法人「OpenLDAP Foundation」が中心となり開発されています。

→OpenLDAP →The OpenLDAP Foundation Overview

■経緯

OpenLDAP Projectは1998年にKurt Zeilenga氏が創始したもので、OpenLDAPソフトウェアはミシガン大学による以前の研究に基づいています。

→ミシガン大学 →Lightweight Directory Access Protocol

■オフィシャルサイト情報

オフィシャルサイト

→OpenLDAP(OpenLDAP, Main Page)

ライセンス情報

OpenLDAPのライセンスは「The OpenLDAP Public License」です。

詳細について、こちらを参照ください。
→GitHub →openldap/openldap →LICENSE

動作環境

OpenLDAPは「UNIX系」「Linux」「Windows」「macOS」などで動作します。

ダウンロード

→OpenLDAP →Download

導入事例

いくつかのLinuxディストリビューションではOpenLDAPでLDAPをサポートしています。

■同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「389 Directory Server」「Apache Directory Server」「OpenDJ」など。

「ディレクトリサービス」と「LDAP」

■「ディレクトリサービス」とは

ディレクトリサービスとは

ディレクトリサービスとは、ネットワーク上に存在するさまざまなリソース情報を効率的に収集し、ディレクトリというデータベースを用いて一元的に管理するためのサービスです。

リソースとは

リソースには以下のようなものが含まれます。
・デバイス—サーバ、プリンター
・ファイル領域—ボリューム、フォルダ、ファイル
・ユーザー—ユーザー名、所属ユーザーグループ、メールアドレス、電話番号 など

ディレクトリとは

ディレクトリとは、基本的な更新機能のサポートに加えて、検索および参照用に特別に設計された特殊なデータベースです。

ネットワーク上の各リソースはオブジェクトと見なされ、特定のリソースに関する情報(リソース名、ホスト名、IPアドレス、アクセス権限、アイデンティティ情報など)は、そのリソースまたはオブジェクトに関連付けられている属性のコレクションとして格納されます。

ネットワーク上のリソース情報を一元管理

ディレクトリサービスは、特定のOSやプラットフォームに制限されずに、「Windows」「macOS」「Linux」「UNIX」などのOSが混在するシステム環境で一元的なディレクトリ管理機能を提供します。

ディレクトリサービスは共有情報インフラストラクチャとして、ネットワーク上のリソース情報を一元管理できるため、中規模以上のネットワークでの利活用が多く、ディレクトリ情報に基づいてユーザーやアプリケーションからリソースへのアクセスをコントロールできます。

■「LDAP」とは

概要

LDAP(Lightweight Directory Access Protocol)とは、ディレクトリサービスにアクセスするための軽量通信プロトコルです。

LDAPはプラットフォームに依存しないIETF標準トラックプロトコルであり、LDAP技術仕様ロードマップ「RFC4510」で指定されています。

LDAPを使用するディレクトリサービスは「LDAPサービス」とも呼ばれます。

クライアントサーバモデル

LDAPはクライアントサーバモデルを利用します。

1つ以上のLDAPサーバにディレクトリ情報を構成するデータが含まれています。

階層化構造

LDAPにおいて、ディレクトリエントリは階層的なツリーのような構造に配置されます。

伝統的に、この構造は地理的または組織的な境界を反映しており、以下のように階層化されています。

①ツリーの最上部には「国」を表すエントリが表示されます。
②その下には「州」および「国内組織」を表すエントリがあります。
③その下には「組織単位」「人」「プリンタ」「ドキュメント」などのエントリが所属します。

ツリーは、インターネットドメイン名に基づいて配置することもできます。

エントリ照会

LDAPでは、ディレクトリに対するエントリの「追加」「削除」「変更」「エントリ名変更」のための機能が提供されています。しかし、LDAPは、多くの場合、ディレクトリ内の情報を検索するために使用されます。

LDAP検索操作では、検索フィルタで指定されたいくつかの基準に一致するエントリを検索し、基準に一致する各項目から情報を要求できます。

グローバルディレクトリサービス

クライアントはLDAPサーバに接続し問い合わせを行います。

サーバは「回答」もしくは「クライアントが追加情報を入手できる場所へのポインタ(別のLDAPサーバ)」を応答します。

クライアントがどのLDAPサーバに接続していても、LDAPサーバに提示された名前は、別のLDAPサーバと同じエントリを参照します。

このように連鎖的に参照していくことが可能なため、グローバルディレクトリサービスとして機能できます。

セキュリティ

LDAPは、クライアントがLDAPサーバに対して認証または自身の身元を証明するためのメカニズムを提供し、サーバーに含まれる情報を保護するための豊富なアクセス制御機能を提供します。

「OpenLDAP」の主な特徴

「OpenLDAP」の主な特徴

■コンポーネント構成

OpenLDAPは、主に次のコンポーネントで構成されています。
・スタンドアロン型LDAPデーモン「slapd(Standalone LDAP Daemon)」
・LDAPプロトコルライブラリモジュール
・LDAPクライアントモジュール—ldapsearch、ldapadd、ldapdelete

■サポート可能なディレクトリサービス構成

OpenLDAPは以下のディレクトリサービス構成をサポートしています。

→OpenLDAP →doc →3. The Big Picture – Configuration Choices

①ローカルディレクトリサービス

ローカルディレクトリサービスでは、ローカルドメインのみにディレクトリサービスを提供するslapdインスタンスを実行します。他のディレクトリサーバとはやり取りしません。

必要に応じて別の設定にアップグレードできます。

②紹介付きローカルディレクトリサービス

紹介付きローカルディレクトリサービス構成では、ローカルドメインにディレクトリサービスを提供するslapdインスタンスを実行し、リクエストを処理できる他のサーバに紹介を返すように設定します。

「ローカルサービスを提供してグローバルディレクトリに参加するケース」や「下位エントリに対する責任を別のサーバに委任するケース」などで、この構成を使用します。

③複製ディレクトリサービス

slapdには、LDAP同期複製機能「syncrepl」が含まれています。これは、複数のディレクトリサーバ上にディレクトリ情報のシャドウコピーを維持するために使用されます。

基本的には「1マスター(syncreplプロバイダ)」+「1つ以上のスレーブ(syncreplコンシューマ)」で構成されます。マルチマスタ構成もサポートされています。

この構成は、上記①もしくは②と組み合わせて使用​​できます。

④分散ローカルディレクトリサービス

分散ローカルディレクトリサービスでは、ローカルサービスはより小さなサービスに分割され、それぞれが複製され、上位および下位の紹介と共に接着されます。

■バックエンド

OpenLDAPサーバ(slapd)は、「ネットワーク処理とプロトコル処理を受け持つフロントエンド」と「データストレージを扱うバックエンド」に分かれているモジュラー構造になっています。

バックエンドは通常のデータベースだけではなく、さまざまなテクノロジーとのインタフェースを提供します。

バックエンド種類

OpenLDAPのバックエンドは、大きく分けて以下の3種類に分類されます。
・データストレージ型—実際にデータを格納
・プロキシ型—他のデータストレージシステムとのゲートウェイ機能
・ダイナミック型—要求された時にデータを生成

「OpenLDAP」の主な機能

「OpenLDAP」の主な機能

■アクセス制御機能

OpenLDAPは、ディレクトリに格納されている機密性の高いデータを保護するためにアクセス制御ポリシーを設定できます。

→OpenLDAP →doc →8. Access Control

■クライアントアクセス制限機能

OpenLDAPは、各LDAPクライアントが消費するサーバリソースを制限するためのクライアントアクセス制限機能を提供します。

「クライアントが1回の操作で取得できるエントリ数を制限できるサイズ制限」と「操作を続行できる時間の長さ制限」の2種類の制限が可能です。

→OpenLDAP →doc →9. Limits

■プラグイン機能「オーバーレイ」

オーバーレイとは、フロントエンドとバックエンドの間に設置できるコンパクトなコードモジュールで、プラグインのような機能を果たします。

フロントエンドとバックエンドの両方に対する操作が可能で、さまざまな機能強化が可能です。

→OpenLDAP →doc →12. Overlays

■セキュリティ機能

OpenLDAPは、厳重に管理されたクローズドネットワークからグローバルインターネットまで、幅広いコンピューティング環境で動作するように設計されています。

そのため、OpenLDAPソフトウェアはさまざまなセキュリティメカニズムをサポートしています。
・ネットワークセキュリティ機能
・データ整合性機能
・機密性保護機能
・認証機能
・パスワード保管機能
・パススルー認証機能 など

→OpenLDAP →doc →14. Security Considerations

■モニタリング機能

OpenLDAPは監視インターフェースを提供しており、「サーバに接続しているクライアント数」など、LDAPslapdインスタンスの現在の状態に関する情報を取得できます。

→OpenLDAP →doc →20. Monitoring

 

参考元サイト

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

AIツール関連 記事リストポータル

AIツール

2023.10.05

AIツール関連 記事リストポータル

AI 関連の記事をまとめたポータルページです。

【IT用語解説】「 デジタルヒューマン 」とは😊

IT用語解説

2024.01.26

【IT用語解説】「 デジタルヒューマン 」とは😊

【IT用語解説】「 デジタルヒューマン 」として、「デジタルヒューマンとは何か?」「どのようにして作成できるのか?」「私たちの世界にどのような影響を与えているのか?」などについて、まとめています。

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

AIツール実験室

2023.12.27

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

各チャットAIの「添削能力」について比較確認をしています。 「ChatGPT4と同等の添削能力を発揮した無料チャットAI」にご注目ください。 また、 ChatGPTカスタマイズ機能「GPTs」を利用して作成した GPTs文章添削機能「添削師匠さん✍️」を紹介しています。 課金勢は試しに使ってみてください。