OpenLDAP 資料一覧
OpenLDAPインストール手順
2008/3/21更新
対応バージョン: 2.4.8
公式サイト
準備
あらかじめインストールしておくもの
BerkeleyDB(db4)
導入OS
Fedora 8
インストール
配布ファイル展開
% tar zxvf openldap-2.4.8.tgz % cd openldap-2.4.8
make,インストール
% ./configure <オプション> % make depend % make % sudo make install
インストール物 (man,infoは除く)
ライブラリ
/usr/local/lib/liblber* /usr/local/lib/libldap*
設定ファイル(サンプル)
/usr/local/etc/openldap/ldap.conf /usr/local/etc/openldap/ldap.conf.default /usr/local/etc/openldap/slapd.conf /usr/local/etc/openldap/slapd.conf.default /usr/local/etc/openldap/DB_CONFIG.example /usr/local/var/openldap-data/DB_CONFIG.example
スキーマ定義
/usr/local/etc/openldap/schema/*
ヘッダファイル
/usr/local/include/lber* /usr/local/include/ldap* /usr/local/include/slapi-plugin.h
デーモン
/usr/local/libexec/slapd
ツール
/usr/local/bin/ldapadd -> ldapmodify /usr/local/bin/ldapcompare /usr/local/bin/ldapdelete /usr/local/bin/ldapmodify /usr/local/bin/ldapmodrdn /usr/local/bin/ldappasswd /usr/local/bin/ldapsearch /usr/local/bin/ldapwhoami /usr/local/sbin/slapacl -> ../libexec/slapd /usr/local/sbin/slapadd -> ../libexec/slapd /usr/local/sbin/slapauth -> ../libexec/slapd /usr/local/sbin/slapcat -> ../libexec/slapd /usr/local/sbin/slapdn -> ../libexec/slapd /usr/local/sbin/slapindex -> ../libexec/slapd /usr/local/sbin/slappasswd -> ../libexec/slapd /usr/local/sbin/slaptest -> ../libexec/slapd
各種設定
基本設定
/usr/local/etc/openldap/slapd.confにて基本的な設定を行う。
ここではとりあえず以下のような設定にする。
include /usr/local/etc/openldap/schema/core.schema pidfile /var/run/slapd.pid argsfile /var/run/slapd.args database bdb suffix "dc=private,dc=jp" rootdn "cn=Manager,dc=private,dc=jp" rootpw secret directory /usr/local/var/openldap-data index objectClass eq
それ以外の設定については以下を参照のこと。
関連資料・記事
DB_CONFIG準備
今回データベースとしてbdb(Berkeley DB)を使用するので、同DB用の設定ファイルを準備しておく。
% cd /usr/local/var/openldap-data % sudo cp DB_CONFIG.example DB_CONFIG % sudo vi DB_CONFIG (設定内容は省略する)
syslog設定
/etc/rsyslog.confに以下の設定を追加し、rsyslogdにHUPシグナルを送る。
local4.* /var/log/slapd.log
動作確認
slapd(LDAPサーバ)を起動する。
% sudo /usr/local/libexec/slapd
待ち受けポートがLISTENになっているか確認する。
% netstat -nat|egrep '(Proto|389)' Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:389 0.0.0.0:* LISTEN
以下のようにして情報が取り出せればOKである。
% ldapsearch -h localhost -b '' -s base '(objectclass=*)' '*' '+' : objectClass: top :
initスクリプト設置
スクリプト作成
/etc/rc.d/init.d/slapdを作成する。
#!/bin/bash # # slapd # # chkconfig: 345 80 20 # description: slapd server TARGET=slapd DST_PREFIX=/usr/local DST_BIN=${DST_PREFIX}/libexec/${TARGET} DST_CONF=${DST_PREFIX}/etc/openldap/${TARGET}.conf DST_PIDF=/var/run/${TARGET}.pid [ -f ${DST_BIN} ] || exit 0 [ -f ${DST_CONF} ] || exit 0 start() { echo -n "Starting ${TARGET}: " ${DST_BIN} -f ${DST_CONF} echo } stop() { echo -n "Shutting down ${TARGET}: " kill `cat ${DST_PIDF}` echo } restart() { stop start } case "$1" in start) start ;; stop) stop ;; restart) restart ;; *) echo "Usage: `basename $0` {start|stop|restart}" >&2 exit 1 esac exit 0
サービス登録
% sudo chkconfig --add slapd % sudo chkconfig --list slapd slapd 0:off 1:off 2:off 3:on 4:on 5:on 6:off