インストール
yum -y install openldap-servers openldap-clients
OpenLDAPサーバーにデータを登録する際の「ldapadd」コマンドや検索用の「ldapsearch」コマンドは「openldap-clients」パッケージに入っている
そのため、OpenLDAPサーバーのみであっても、「openldap-clients」パッケージもインストールしておくこと
初期設定削除
rm -rf /etc/openldap/slapd.d/*
rm -rf /var/lib/ldap/*
設定ファイルのコピー
cp -a /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown ldap. /var/lib/ldap/DB_CONFIG
cp -a /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf
マスターパスワード作成
slappasswd -s pass
{SSHA}fCkF7qPmO1cnQsPun1fixcrhCNP+Kerd
設定ファイル編集
/etc/openldap/slapd.conf
# スキーマファイル設定
include /etc/openldap/schema/corba.schema
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/duaconf.schema
include /etc/openldap/schema/dyngroup.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/java.schema
include /etc/openldap/schema/misc.schema
include /etc/openldap/schema/nis.schema
include /etc/openldap/schema/openldap.schema
include /etc/openldap/schema/ppolicy.schema
include /etc/openldap/schema/collective.schema
# 接続プロトコル
allow bind_v2
# 管理ファイル
pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args
# TLS設定
#TLSCACertificatePath /etc/openldap/ssl/cacert.pem
#TLSCertificateFile /etc/openldap/ssl/server.crt
#TLSCertificateKeyFile /etc/openldap/ssl/server.key
# userPasswordに関するアクセス権
access to attrs=userPassword
by self write
by dn="cn=Manager,dc=example,dc=com" write
by anonymous auth
by * none
# その他の属性に対するアクセス権
access to *
by self write
by dn="cn=Manager,dc=example,dc=com" write
by * read
# monitorデータベースに対するアクセス権
database monitor
access to *
by dn.exact="cn=Manager,dc=example,dc=com" read
by * none
# データベース設定
database bdb
suffix "dc=example,dc=com"
checkpoint 1024 15
rootdn "cn=Manager,dc=example,dc=com"
rootpw {SSHA}fCkF7qPmO1cnQsPun1fixcrhCNP+Kerd
directory /var/lib/ldap
# indexの設定
index objectClass eq,pres
index ou,cn,mail,surname,givenname eq,pres,sub
index uidNumber,gidNumber,loginShell eq,pres
index uid,memberUid eq,pres,sub
index nisMapName,nisMapEntry eq,pres,sub
設定のテスト
sudo -u ldap slaptest -u -v -f /etc/openldap/slapd.conf
config file testing succeeded
/etc/openldap/slapd.d/ の更新
sudo -u ldap slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d
エラーが出るが無視する
bdb_db_open: database "dc=example,dc=com": db_open(/var/lib/ldap/id2entry.bdb) failed: No such file or directory (2).
backend_startup_one (type=bdb, suffix="dc=example,dc=com"): bi_db_open failed! (2)
slap_startup failed (test would succeed using the -u switch)
LDAP起動
/etc/init.d/slapd start
chkconfig slapd on