-
サーバ構築のデージーネットTOP
-
OSS情報
-
OSS紹介
-
LDAPサーバでパスワード管理の課題を解決〜OpenLDAP〜
-
OpenLDAPサーバ インストール・構築方法
OpenLDAPサーバ インストール・構築方法
最近のOpenLDAPは、各ディストリビューションが採用しているバージョンよりも改良されていて、バックエンドのデータベースもより高速なものに置き換えられています。ここでは、ソースコードからのインストール方法について解説します。
OpenLDAPのソースコードのダウンロード
OpenLDAPのソースコードは、次のURLからダウンロードできます。
http://www.openldap.org/
ソースコードをダウンロードしたら、展開します。
$ tar xvzf openldap-2.4.45.tgz ⏎
LDAPサーバのコンパイルとインストール
展開したディレクトリに移動します。
configureを実行します。
$ ./configure --with-tls -enable-crypt --with-cyrus-sasl -enable-rwm --enable-monitor=no ⏎
最初にmake dependを実行します。
コンパイルします。
正常にコンパイルできたらインストールします。
# su ⏎
Passowrd: ********** ⏎
# make install ⏎
LDAPサーバの初期設定
slapd.confファイルに初期設定を行います。suffix、rootdnは、実際の組織に合わせて設定します。次は、その設定例です。
/usr/local/etc/openldap/slapd.conf
include /usr/local/etc/openldap/schema/core.schema
pidfile /usr/local/var/run/slapd.pid
argsfile /usr/local/var/run/slapd.args
database config
rootdn cn=admin,cn=config
access to *
by dn.exact=gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth manage
by * break
database mdb
maxsize 1073741824
suffix "dc=designet,dc=jp"
rootdn "cn=Manager,dc=designet,dc=jp"
rootpw {SSHA}A/9vWhXE6Fk7wWI0iwQJDnr8QgOqKayF
directory /usr/local/var/openldap-data
index objectClass eq
rootpwは、slappasswdコマンドで作成します。
# slappasswd ⏎
New password: ******** ⏎
Re-enter new password: ******** ⏎
{SSHA}A/9vWhXE6Fk7wWI0iwQJDnr8QgOqKayF
設定ファイルを元に、初期設定ディレクトリを作成します。
# cd /usr/local/etc/openldap ⏎ ← ディレクトリを移動
# mkdir slapd.d ⏎ ← 設定ディレクトリを作成
# slaptest -f slapd.conf -F slapd.d -u ⏎ ← 設定を変換
LDAPサービス起動設定
systemdからLDAPサービスを起動するためのユニットファイルを作成します。
/usr/lib/systemd/system/slapd.service
[Unit]
Description=OpenLDAP server
After=syslog.target network.target
[Service]
Type=forking
PIDFile=/usr/local/var/run/slapd.pid
ExecStart=/usr/local/libexec/slapd -h "ldap:/// ldapi:///"
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/bin/kill -TERM $MAINPID
[Install]
WantedBy=multi-user.target
ユニットファイルを作成したら、systemdに変更を通知します。
# systemctl daemon-reload ⏎
LDAPサービスの起動
systemctlコマンドを使って、LDAPサーバを起動します。
# systemctl start slapd.service ⏎
パケットフィルタリングの設定
パケットフィルタリングの設定を変更し、LDAPポートへの通信を許可します。
# firewall-cmd --add-service=ldap ⏎
LDAP DITの登録
LDAPサーバに作成するDITに合わせて、基本データを登録します。最低限、rootdnとDITのトップディレクトリの設定が必要です。
init.ldif
dn: dc=designet,dc=jp
objectClass: organization
objectClass: dcObject
o: DesigNET, INC.
dc: designet
dn: cn=Manager,dc=designet,dc=jp
objectClass: organizationalRole
cn: Manager
LDAPユーティリティコマンドを使って、データを登録します。
$ ldapadd -x -D "cn=Manager,dc=designet,dc=jp" -W -f init.ldif ⏎
Enter LDAP Password: ******** ⏎
adding new entry "dc=designet,dc=jp"
adding new entry "cn=Manager,dc=designet,dc=jp"
やっておいた方が良い設定
syslog設定
LDAPサーバのログは、標準ではlocal4のファシリティでsyslogに出力されます。そのため、ログが記録されるようにrsyslogの設定を変更しておきます。
/etc/rsyslog.conf
ログレベルの変更
LDAPサーバ側には、出力するログのレベルを設定します。
loglevel.ldif
dn: cn=config
changetype: modify
replace: olclogLevel
olcLogLevel: filter config ACL stats
# ldapmodify -Q -Y EXTERNAL -H ldapi:/// -f loglevel.ldif ⏎
modifying entry "cn=config"
入門LDAP/OpenLDAP 第3版
2017年11月に発売された第3版です。OpenLDAP2.4の入門書としてGUIを使った管理の解説が充実しました。また、RADIUSとの連携、LDAPプログラミングの事例、Microsoft Active Directoryなど、さらに内容が充実しています。本ページは、「入門LDAP/OpenLDAP 第3版」に記載した内容の要約です。LDAPは用語や概念が難しく、体系的に学ぶべき技術分野です。より詳しい情報が必要な場合には、ぜひ書籍をご参照下さい。
入門LDAP/OpenLDAP 第3版サポートページへ
関連情報
389 Directory Serverは、LDAPサーバのもう1つの実装です。Red Hat社が出資するFedoraプロジェクトによって開発・管理されています。389 Directory ServerとOpenLDAPは、の2つを比較した際、389 Directory Serverの方がより高速であるという特徴があります。RedHat Enterprise Linux 8では、OpenLDAPに替わり、389 Directory Serverが採用されています。
389 Directory Serverはオープンソースのディレクトリサーバです。OpenLDAPサーバに替わるLDAPソフトウェアとして注目されています。本書では、389 Directory Serverのインストールや基本的な管理方法をまとめています。調査報告書は無料でダウンロードが可能です。
LDAPサーバは、LDAPに基づいてディレクトリサービスを提供するサーバのことです。企業内では特に、ユーザ情報の一元管理や認証の基盤として利用されています。しかし、OSSのLDAPサーバのソフトウェアには、LDAPのデータを管理するためのGUIが付属しておらず、標準ではコマンドラインの操作が必要です。この記事では、LDAPサーバのデータを管理するためのOSSと、それぞれの特徴を紹介します。
OpenLDAPのミラーモードでLDAPサーバーを二重化しました。認証システムの冗長構成が求められていましたが、冗長化ソフトウェアの導入はコスト面で問題がありました。OpenLDAPの柔軟性を活用し、OpenLDAP標準機能であるミラーモードを使うことで、特別な冗長化ソフトウェアを使わずに、認証システムの冗長化を実現しました。
リモートアクセスの管理などで利用しているLDAPサーバーをリプレースしました。これまで利用してきた製品からOpenLDAPへ移行することで、ライセンス費用を抑え、代わりにサーバーを冗長化することが可能となりました。
LDAPサーバーをサービス無停止で提供するため、PacemakerとDRBDを利用したHAクラスタでLDAPクラスタを構築しました。
ケーブルテレビの契約ユーザー向けのLDAPサーバのリプレースを行いました。これまで使用してきた389 Directory ServerからOpenLDAPへリプレースしようとしましたが、設定上、うまくいかないことがあり、新サーバーでも389 Directory Serverを採用することになりました。旧389 Directory Serverで利用していたLDAPのデータもすべて移行しました。
デージーネットでは、豊富なLDAPの利用実績を書籍として公開しています。より詳しい情報が必要な場合には、ぜひ書籍をご参照下さい。「入門LDAP/OpenLDAP ディレクトリサービス導入・運用ガイド」第3版では、RADIUSサーバをLDAPサーバと連携させる方法や、Microsoft社のActive Directory(AD)をLDAPサーバとして使う方法なども掲載しています。
デモのお申込み
もっと使い方が知りたい方へ
OpenLDAPの操作方法や操作性をデモにてご確認いただけます。使い方のイメージを把握したい、使えるか判断したい場合にご活用下さい。OpenLDAPのデモをご希望の方は、下記よりお申込みいただけます。
OSS情報「OpenLDAP」
- LDAPサーバのslapdとは?
- LDAPサーバ(slapd)は、OpenLDAPに付属するLDAPサーバのソフトウェアです。インターネット上で広く利用されてます。LDAPプロトコル Version 2、Version 3に対応したLDAPサーバです。
- LDAPユーティリティコマンド
- OpenLDAPには、LDAPユーティリティが付属しています。ここでは、主なLDAPユーティリティの概要を紹介します。
- LDAPをGUIで管理するツール
- OpenLDAPに付属するLDAPサーバ管理コマンドは、非常に柔軟で便利です。ここでは、用途に合わせたGUI管理ツールを紹介します。
- LDAPサーバの連携
- LDAPサーバは、様々なアプリケーションと連携することができます。ここでは、デージーネットがLDAPサーバと連携した実績のあるアプリケーションを紹介します。