サーバー管理の困った!を○○で解決 LDAPを使ったユーザー管理編 1/2

2015/09/03 技術系 投稿者:

煩雑なユーザー管理はLDAPで解決!

多数のサーバを抱えるサーバ管理者にとって、ユーザー管理は頭を悩ませる業務の一つです。

例えばある社員が異動になれば、各サーバにログインして権限を変更したり削除して回る必要がありますし、また新入社員や退職する社員が出た際にも同様の作業が発生します。

server-kanri

今回はこうしたサーバーの台数が増えるごとに困難になっていくユーザー管理に加え様々な情報を一元管理できるLDAPについてご紹介します。

全2回を予定しておりLDAPの基礎から導入方法、そして基本的な使い方といったLDAPの入門的な内容で、ユーザー管理でお悩みのサーバー管理者向けの記事となります。
LDAPのインストール方法についてもなるべく詳細に紹介していきますので、他のLDAPの記事を読んでよく理解できなかった方も本記事を参考にして再挑戦してもらえれば幸いです。

LDAPとは

LDAPは【 Lightweight Directory Access Protocol 】の略で、インターネットなどのTCP/IPネットワークでディレクトリサービスにアクセスするための通信プロトコルの一つです。
クライアントはTCPポート番号389を使用してLDAPサーバに接続を行い、属性(個人名や部署名)で構成するエントリ(関連する属性のまとまり)の検索、追加、削除の操作を行うことができます。

ディレクトリサービスはネットワークの利用者に関する情報や、ネットワークに接続された機器・資源に関する情報をサーバ上のデータベースで一元管理する仕組みです。
LDAPは利用者がクライアントを用いてディレクトリサーバに接続し、その管理する情報を利用するための通信手順を定めています。

LDAPを使うとできること

例えばLDAPサーバを1台構築しておくだけで、他のサーバからユーザ認証をLDAPサーバに問い合わせてくれます。
そのため、ユーザ管理はこのLDAPサーバ上で行っておけば、わざわざ他の各サーバ上にユーザを登録しなくても良いということになります。

ldap01

LDAPのメリット

上記で挙げたユーザ管理で説明しますと、管理が楽になります。
例えば退職者がいた場合、通常は退職者のアカウントをファイルサーバ、メールサーバ、開発用サーバ等といったそれぞれのサーバに入って削除していかなければなりません。
LDAPを利用することでLDAPサーバに登録されているアカウントを削除するだけで全てのサーバに退職者がログインすることが出来なくなります。

LDAPのデメリット

メリットの裏返しとなりますが、一元管理が可能となるゆえにアカウント情報が漏れた場合に全てのサーバにアクセスできてしまうことにあります。
ただLinuxで言うところのグループ設定などといった細かい権限設定はできますので、初めからセキュリティを意識した構築をしておくことで、このデメリットは最小限にすることが可能です。

LDAPディレクトリサービスの概要

ディレクトリサービスのプロトコルとして有名なプロトコルに、X.500ディレクトリアクセスプロトコル(DAP)がありますが、
LDAPはその名の通り、そのX.500のDAPを軽量化したものとなります。

LDAPの特長

  • X.500ディレクトリアクセスプロトコルに比べて、非常に軽い実装になっている。
  • アクセスと更新の両方をサポートしていて、なおかつ読み取りの用途に最適化している。したがって、書き込み処理よりも読み込みや検索処理を多く行うシステムに適している。
  • 軽い実装ではあるが、様々なアプリケーションをサポートできる豊富な機能を提供している。
  • 豊富な検索機能を持っている。
  • 認証機能を持っていて、アクセス制御に基づいて情報を保護することができる。
  • 様々な用途に適合できるよう、格納するデータタイプを自由に定義・拡張することができる。
  • データ複製機能を備えており、信頼性の高いシステムを構築することができる。

LDAPのデータ構造

LDAPでは、様々なデータを統一的に扱えるようになっています。LDAPで情報を扱う基本単位をエントリを呼びます。
LDAPエントリは属性と呼ばれる情報単位の集合として構成されます。さらに各属性は、属性の型(属性タイプ)と1つまたは複数の値(属性値)を持っています。

ldap02

各エントリはユニークな名前のDN(Distinguished Name)と呼ばれる属性を持ち、DNによって一意に検索を行うことができます。
通常、DNはエントリの検索を容易にするために、上位のエントリ名を含まないRDN(Relative Distinguished Name)も持つようにします。
尚DN、RDNは一意である必要があります。

LDAPエントリでは、そのエントリに設定する必要がある属性、または設定することのできる属性をobjectClassという特別な属性を用いて定義することもできます。
この定義をスキーマ定義と呼びます。
よく使用される属性タイプには、下記のようなものがあります。

よく使用される属性タイプ

属性タイプ 説明
dn 識別名 [Distinguished Name]
dc 識別名 [Domain Component]
objectClass オブジェクトクラス
o 組織名 [Organization]
ou 組織単位 [Organization Unit]
cn 一般名称

複数の属性の集合であるエントリは、ツリー構造で構成されます。例えば、nedia.ne.jpドメインの組織は、下記の図にように構成することができます。

ldap03

本例では、uid=user01のエントリのDNは、uid=user01,ou=People,dc=nedia,dc=ne,dc=jp、RDNはuid=user01となります。

LDIFテキストフォーマット

LDAPデータをインポートまたはエクスポートする場合、一般的にはLDIFテキストフォーマットを用います。
LDIFはエントリの属性タイプと属性値を:(コロン)で区切った形式で表します。

LDIFの例

本例は、DNがuid=user01,ou=people,dc=nedia,dc=ne,dc=jpのLDAPエントリをLDIFテキストフォーマットで表したものです。

LDAPの基礎についての記事は以上となります。
第2回となる次回の記事は以下の項目を予定しています。

  • OpenLDAPの導入(パッケージのインストール、サービスの起動)
  • サービスの起動設定(サービスの自動起動、サービスの手動制御)
  • アクセス制御の設定
  • LDAPサーバの基本設定とサービスの起動
  • データベースチューニング設定
  • サービスの起動
  • LDAPデータベースの設定
  • LDAPデータベースの基本設定

それでは!

カレンダー

 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
   1234
567891011
12131415161718
19202122232425
26272829   
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
  12345
6789101112
13141516171819
20212223242526
2728     
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
1234567
891011121314
15161718192021
22232425262728
       
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
     12
3456789
10111213141516
17181920212223
24252627282930
31      
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
     12
3456789
10111213141516
17181920212223
242526272829 
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
    123
45678910
11121314151617
18192021222324
25262728   
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
   1234
567891011
12131415161718
19202122232425
262728    
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728     
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
1234567
891011121314
15161718192021
22232425262728
29      
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
      1
2345678
9101112131415
16171819202122
232425262728 
       
   1234
567891011
12131415161718
19202122232425
262728293031 
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
     12
3456789
10111213141516
17181920212223
2425262728  
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
U・Iターン転職しませんか?
群馬データセンター
群馬の法人ITサポートサービス Wide Net[ワイドネット]
Wide Netのクラウドバックアップ
クラウド型ファイル共有サービスRushDrive
ワイドオフィス
ネディアのSDGsへの取り組み