ディレクトリサービス上に設定する方法は、slapd.confから変換する方法もありますが、ここではディレクトリ
サービスのインタフェースを介した手順を説明します。
・ldapの起動
事前に起動させておく必要があります。
・データベースの設定
初期登録されている既存のドメイン情報を変更して、使用します。
以下のような内容で、ドメイン情報変更用のldifファイルを作成します。
dn: olcDatabase={1}monitor,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=olmgr,o= test_o,dc=ac,c=JP" read by * none
dn: olcDatabase={2}bdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: o=test_o,dc=ac,c=JP ←suffix
-
replace: olcRootDN
olcRootDN: cn=olmgr,o=test_o,dc=ac,c=JP ←rootdn
-
add: olcRootPW
olcRootPW: {CRYPT}olagW85bjtaKc ←rootパスワード(暗号化したもの)
ここで設定したolcRootPWは、LDAPのデータベースに対する管理者パスワードです。
また、このパスワードは IdPの設定ファイルにも記述します。(後述)
※暗号化の例:
「csildap」というパスワードを暗号化
# slappasswd -h {crypt} -s csildap
{CRYPT}olagW85bjtaKc ←これをドメイン情報変更用ldifのolcRootPWに記載
以下のコマンドを実行して、ドメイン情報を変更します。
# ldapmodify -Y EXTERNAL -H ldapi:// -f ドメイン情報変更用のldifファイルパス
・eduPersonスキーマの登録
スキーマの登録においてもディレクトリサービスのインタフェースを介した手順となります。
ldifファイルより行うため、eduPersonスキーマを使ってldifファイルを作成します。
以下のような内容で、ldifファイル作成に必要な設定ファイルを作成します。
include /etc/openldap/schema/eduperson.schema
以下のコマンドを実行して、eduPersonスキーマのldifファイルを作成します。
# slapcat -f 作成した設定ファイルのパス -F /tmp -n0 -s "cn={0}eduperson,cn=schema,cn=config" > /etc/openldap/schema/eduperson.ldif
作成したldifファイルから余分な情報を削除します。
以下の手順に従って、/etc/openldap/schema/eduperson.ldifを編集してください。
・ファイル先頭にある {0}eduperson を eduperson に修正
以下は、修正後の内容です。
dn: cn=eduperson,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: eduperson
・ファイルの後方にある「structuralObjectClass: olcSchemaConfig」以降を全て削除
以下は、削除対象の項目です。
structuralObjectClass: olcSchemaConfig
entryUUID: ・・・ (省略)
creatorsName: ・・・ (省略)
createTimestamp: ・・・ (省略)
entryCSN: ・・・ (省略)
modifiersName: ・・・ (省略)
modifyTimestamp: ・・・ (省略)
以下のコマンドを実行して、edupersonスキーマを登録します。
# ldapadd -Y EXTERNAL -H ldapi:// -f /etc/openldap/schema/eduperson.ldif