ページ

2014年8月9日土曜日

AWSにお世話になる 5 - LDAP -

LDAP(認証)サーバーの導入と設定


LDAPについて・・・
LDAP(Lightweight Directory Access Protocol)はTCP/IP上で稼働するX-500をベースとするディレクトリサービス。
ディレクトリは「エントリ」という単位で構成、DIT(Directory Information Tree)と呼ばれる階層を持つ。各エントリは個別識別子であるDN(Distinguished Name)と属性、オブジェクトクラスを持ち、LDIF(LDAP Data Interchange Format)と呼ばれるテキスト形式で記述。



















1. OpenLDAPの導入
サーバー名とドメイン名が正しく設定されているか確認。
ubuntu@chopper:~$ cat /etc/hostname
chopper
ubuntu@chopper:~$ cat /etc/hosts

127.0.0.1 chopper.tony.com chopper

※書籍ではドメイン名がお名前.comで取得したドメイン名だったので
  もしかしたらうまく導入できないかも。。。

OpenLDAPインストール
ubuntu@chopper:~$ sudo apt-get install -y slapd ldap-utils db5.1-util
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libdb5.1 libltdl7 libodbc1 libperl5.18 libslp1
Suggested packages:
  libmyodbc odbc-postgresql tdsodbc unixodbc-bin slpd openslp-doc
The following NEW packages will be installed:
  db5.1-util ldap-utils libdb5.1 libltdl7 libodbc1 libperl5.18 libslp1 slapd
0 upgraded, 8 newly installed, 0 to remove and 4 not upgraded.
Need to get 2,343 kB of archives.
After this operation, 7,904 kB of additional disk space will be used.
Get:1 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu/ trusty/universe libdb5.1 amd64 5.1.29-7ubuntu1 [580 kB]
Get:2 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu/ trusty/main libltdl7 amd64 2.4.2-1.7ubuntu1 [35.0 kB]
Get:3 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu/ trusty/main libodbc1 amd64 2.2.14p2-5ubuntu5 [175 kB]
Get:4 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu/ trusty/main libperl5.18 amd64 5.18.2-2ubuntu1 [1,322 B]
Get:5 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu/ trusty/main libslp1 amd64 1.2.1-9 [45.1 kB]
Get:6 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu/ trusty/main slapd amd64 2.4.31-1+nmu2ubuntu8 [1,317 kB]
Get:7 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu/ trusty/universe db5.1-util amd64 5.1.29-7ubuntu1 [66.6 kB]
Get:8 http://ap-northeast-1.ec2.archive.ubuntu.com/ubuntu/ trusty/main ldap-utils amd64 2.4.31-1+nmu2ubuntu8 [123 kB]
Fetched 2,343 kB in 0s (3,414 kB/s)
Preconfiguring packages ...
Selecting previously unselected package libdb5.1:amd64.
(Reading database ... 51210 files and directories currently installed.)
Preparing to unpack .../libdb5.1_5.1.29-7ubuntu1_amd64.deb ...
Unpacking libdb5.1:amd64 (5.1.29-7ubuntu1) ...
Selecting previously unselected package libltdl7:amd64.
Preparing to unpack .../libltdl7_2.4.2-1.7ubuntu1_amd64.deb ...
Unpacking libltdl7:amd64 (2.4.2-1.7ubuntu1) ...
Selecting previously unselected package libodbc1:amd64.
Preparing to unpack .../libodbc1_2.2.14p2-5ubuntu5_amd64.deb ...
Unpacking libodbc1:amd64 (2.2.14p2-5ubuntu5) ...
Selecting previously unselected package libperl5.18.
Preparing to unpack .../libperl5.18_5.18.2-2ubuntu1_amd64.deb ...
Unpacking libperl5.18 (5.18.2-2ubuntu1) ...
Selecting previously unselected package libslp1.
Preparing to unpack .../libslp1_1.2.1-9_amd64.deb ...
Unpacking libslp1 (1.2.1-9) ...
Selecting previously unselected package slapd.
Preparing to unpack .../slapd_2.4.31-1+nmu2ubuntu8_amd64.deb ...
Unpacking slapd (2.4.31-1+nmu2ubuntu8) ...
Selecting previously unselected package db5.1-util.
Preparing to unpack .../db5.1-util_5.1.29-7ubuntu1_amd64.deb ...
Unpacking db5.1-util (5.1.29-7ubuntu1) ...
Selecting previously unselected package ldap-utils.
Preparing to unpack .../ldap-utils_2.4.31-1+nmu2ubuntu8_amd64.deb ...
Unpacking ldap-utils (2.4.31-1+nmu2ubuntu8) ...
Processing triggers for ureadahead (0.100.0-16) ...
Processing triggers for ufw (0.34~rc-0ubuntu2) ...
Processing triggers for man-db (2.6.7.1-1) ...
Setting up libdb5.1:amd64 (5.1.29-7ubuntu1) ...
Setting up libltdl7:amd64 (2.4.2-1.7ubuntu1) ...
Setting up libodbc1:amd64 (2.2.14p2-5ubuntu5) ...
Setting up libperl5.18 (5.18.2-2ubuntu1) ...
Setting up libslp1 (1.2.1-9) ...
Setting up slapd (2.4.31-1+nmu2ubuntu8) ...
  Creating new user openldap... done.
  Creating initial configuration... done.
  Creating LDAP directory... done.
 * Starting OpenLDAP slapd                                                         [ OK ] 
Setting up db5.1-util (5.1.29-7ubuntu1) ...
Setting up ldap-utils (2.4.31-1+nmu2ubuntu8) ...
Processing triggers for libc-bin (2.19-0ubuntu6) ...
Processing triggers for ureadahead (0.100.0-16) ...

Processing triggers for ufw (0.34~rc-0ubuntu2) ...

途中LDAPの管理者パスワードを設定する
























2. OpenLDAPの基本構成と基本コマンド
UbuntuのOpenLDAPでは「/etc/ldap/slapd.conf」設定ファイルによる管理は行いません。
LDAP管理の為の独立したDITがあり、LDAPサーバー(slapdデーモン)を再起動しなくても動的に構成を変更できる仕組みになっています。これらの手法は「slapd-configメソッド」や「RTC(Real Time Configuration)」メソッド、「cn=configメソッド」と呼ばれています。

具体的にはLDAPの構成ファイルが「/etc/ldap/slapd.d」のディレクトリ下で、テキスト形式のLDIFファイル(拡張子「.ldif」)で管理されています。

OpenLDAPでは、2つのDITがあり、cn=config DITとは別にドメインデータDITがあります。それぞれで使用するコマンドオプション、LDAPプロトコル、実行者権限が異なる。

・OpenLDAPの基本コマンド
    ldapsearch      -> LDAPディレクトリからエントリを検索
    ldapadd           -> LDAPディレクトリへエントリを追加
    ldapmodify     -> LDAPディレクトリのエントリを更新
    ldapdelete       -> LDAPディレクトリからエントリを削除
    slapcat            -> LDAPディレクトリからLDIFファイルをエクスポートする

例)cn=configからdnを検索
ubuntu@chopper:~$ sudo ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=config dn
dn: cn=config

dn: cn=module{0},cn=config

dn: cn=schema,cn=config

dn: cn={0}core,cn=schema,cn=config

dn: cn={1}cosine,cn=schema,cn=config

dn: cn={2}nis,cn=schema,cn=config

dn: cn={3}inetorgperson,cn=schema,cn=config

dn: olcBackend={0}hdb,cn=config

dn: olcDatabase={-1}frontend,cn=config

dn: olcDatabase={0}config,cn=config


dn: olcDatabase={1}hdb,cn=config

肝心のドメインがうまくできているかですが。。。
ubuntu@chopper:~$ ldapsearch -x -LLL -b dc=chopper,dc=tony,dc=com
No such object (32)

Matched DN: dc=tony,dc=com

ダメごたーでしたorz
という事で、LDAPは一時中断で^^;

0 件のコメント:

コメントを投稿