平成 17 年 12 月 22 日 ECL 卒研ゼミ関係者各位 近畿大学理工学部情報学科 電子商取引研究室 山本 宜和 LDAP について 1 発表内容 LDAP の調査。 う事ができるようになる。このように LDAP は様々なア プリケーションをディレクトリシステムを利用してサポー トする事ができる。その他の利点 • LDAP とは? • X.500 プロトコルに比べて軽い実装になっている。 • LDAP のデータ構造 • passwd ファイル等のファイルを使ってアカウントの • OPENLDAP のインストール 認証を行うより高速に LDAP はアカウントの認証を • LDAP との連携(メールアプリケーション) 行える。 • 研究室での使いみち • レプリケーション機能 • 参考サイト • 格納するデーターのタイプを自由に定義、拡張するこ とができる。 2 LDAP(Lightweight Directory Access Protocol)とは? LDAP とはネットワーク上でディレクトリサービスに • SSL 通信 2.2 • IBM Directory Server 無償で IMB のホームページからダウンロード可能 アクセスするためのプロトコルである。これは一種のデー タベースサービスである。LDAP は X.500 をベースにし 様々なディレクトレシステムの製品 • SUN ONE Directory Server ており、X.500 は、1980 年代後半に開発された PC で利用 Sun が Netscape が提供していた Directory Server を できる最初のオープンなディレクトリのシステムである。 引き継いで提供している。 しかし、X.500 はコンピュータリソースを多く必要とする • Novell eDirectory のであまり普及することはなかった。X.500 は OSI(Open • Active Directory System Interconnect) ネットワークモデルをベースにし Windows オペレーティングシステムとの親和性は他 たディレクトリ接続のためのプロトコルだったが、LDAP ベンダよりも優れている。Microsoft が開発した。 はその X.500 と、TCP/IP ネットワークモデルをベース • OpenLDAP としている。現在の主流はバージョン 3 の LDAPV3 であ 最初の LDAP の実装で SLAPD(stand-alone LDAP る。 daemon) が公開され、拡張が続けられてきて OpenL- ディレクトリサービスは、ユーザーやファイル、その他の DAP に引き継がれた。 ネットワーク上の資源をファイル名等のキーによって管 理し一意に識別できるサービスである。現実の世界では電 話帳や図書館の目録がディレクトリにあたり、ディレクト リの特徴は誰でもあらゆる場所から検索できる事である。 インターネット上で IP アドレスとホスト名を対応させる DNS(Domain Name Syetem)はディレクトリサービス で実装されている。 2.1 LDAP 導入の長所・用途 これまで、samba や mysql 等のサーバーを扱うとユー ザーの管理はサーバー毎に別々に行い、ユーザー情報は分 散している状態だった。そこで、LDAP と各サーバーを連 携さす事によって LDAP でユーザーの管理を一元的に行 2.3 短所 ・認証情報を格納するオブジェクトクラスがアプリケー ションにごとに異なると、サーバでの参照ができない。・ ユーザー ID をどこの属性の値にするかがアプリケーショ ンにごとで異なる可能性がる。 ・異なるベンダの LDAP サーバー間でデータを複製する 仕組みが標準化されていない。 3 LDAP のデータ構造 LDAP サーバーで情報を扱う基本単位をエントリと NAME ’inetOrgPerson’ DESC ’RFC2798: Internet Organizational Person’ SUP organizationalPerson 呼ぶ。LDAP は DN(Distinguished Name) という属性で STRUCTURAL LDAP へのエントリを一意に識別する。エントリは*.ldif MAY ( ファイルに定義して、LDAP サーバーに登録する。 audio $ businessCategory $ carLicense $ DN の 例 dn: cn=yoshikazu,ou=Addressbook,dc=my- departmentNumber $ displayName $ domain,dc=com, employeeNumber $ employeeType $ givenName $ DN は一意にしなければならない。データ構造はツリー homePhone $ homePostalAddress $ initials $ jpegPhoto $ labeledURI $ mail $ manager $ 状で表現できる。 自分が定義した ldif ファイルの一部 mobile $ o $ pager $ photo $ roomNumber $ secretary $ uid $ userCertificate $ x500uniqueIdentifier $ preferredLanguage $ dn: dc=my-domain,dc=com userSMIMECertificate $ userPKCS12 ) objectClass: dcObject ) objectClass: organization o: my-domain Organization dc: my-domain 詳しくはこちらを参照してくだいさい http://park15.wakwak.com/ unixlife/practical/openldap1.html dn: ou=Addressbook,dc=my-domain,dc=com objectclass: organizationalUnit ou:Addressbook 4 Open LDAP のインストールの流れ 1. open-ldap-servers と openldap-clients をインストー ル 2. LDAP サーバーを設定する。 dn: cn=yoshikazu,ou=Addressbook,dc=my-domain,dc=com vi /etc/openldap/slapd.conf objectclass: inetOrgPerson objectclass: top 3. LDAP クライアントを設定する vi /etc/openldap/lapd.conf ou:Addressbook 4. LDAP サーバーを起動 sn:yoshikazu /etc/init.d/ldap start cn:yoshikazu 5. LDAP サーバーをランレベル 5(GUI 上) で起動する givenName:yoshikazu よう設定する homePhone:電話番号 chkconfig ldap on homePostalAddress:郵便番号 6. LDAP サーバー初期情報登録 (*.ldif ファイルの作成) initials:YY 7. 既存ユーザ情報を LDAP サーバーへ登録 mail:メールアドレス 8. 既存グループ情報を LDAP サーバーへ登録 mobile:携帯電話の番号 9. ユーザ認証方式に LDAP 認証を追加 ldap のエントリの属性やオブジェクトクラスはスキーマ によって全て定義される。スキーマではオブジェクトク ラスが何の属性を持つかも定義する。上の cn=yoshikazu のエントリでは、objectclass に inetOrgPerson が示さ れているが inetOrgPerson クラスの属性はスキーマで homePhone であったり mail が定義されている。オブ authconfig 10. LDAP サーバー確認 従来の手順でユーザーを追加し、次にそのユーザーを LDAP サーバーに登録する。そして、従来の手順で追 加したユーザーを削除する。最後に LDAP サーバー でのユーザー認証を確認する。 ジェクトクラス「inetOrgPerson」を定義するスキーマ とても、不親切な説明なのでここを参考にやってくださ の例 い。 objectclass ( 2.16.840.1.113730.3.2.2 http://fedorasrv.com/openldap.shtml 5 LDAP との連携 (メールアプリケーション) セッション「LDAP とは?」でディレクトリシステム は現実の世界で電話帳等に当たると述べた。電話帳は基本 的にどんな人でも読むことができるが、LDAP もそれに あたる。例えばメールアプリケーションによって LDAP のディレクトリを読み取る事が可能である。ディレクトリ が、アドレス帳になるのだ。しかもディレクトリはどんな メールアプリでも読み取る事ができ、アドレス帳を共有し 一元的に管理することができる。セッション「LDAP の データ構造」のデータ構造で ldif ファイルの例を紹介し たが、実はこのファイルの 屬妊▲疋譽皇△鮑鄒 し、 番で具体的な情報を格納している。 番と 番が正しく LDAP に読み込まれると、ディレクトリにはアドレス帳 「Addressbook」に「yoshikazu」が登録される。今回メー ルアプリケーション「Evolution」で LDAP のディレクト リから「yoshikazu」の情報を取得する実験を行った。そ の詳細は自分の HP の ppt ファイル”第 2 回プレゼンテー ション”に載せた。 6 研究室での LDAP の役割 LDAP サーバーによってアカウントの管理を一元的に 管理し、共有することができる。 1 回の認証手続きで、複数のアプリケーションなどにアク セスできるシングルサインオンに利用できる。 7 参考サイト • ldap について詳しく http://www.thinkit.co.jp/free/tech/18/1/1.html • インストール手順 http://fedorasrv.com/openldap.shtml • スキーマについて http://www.linux.or.jp/JF/JFdocs/LDAPImplementation-HOWTO/schemas.html • ldap とシングルサインオンについて http://www.atmarkit.co.jp/fnetwork/rensai/dirt02/01.html • LDAP に入門(お進め) http://cvs.cacanet.org/fsc/ldap/0514/
© Copyright 2024 Paperzz