openldap
提供: 個人的記録
LDAPがよくわからないので openldap を入れていろいろ試した記録
環境
- hyper-v + rocky linux 9
インストール
- dnfでインストールを試みたが、openldap-servers パッケージが入っていない。
- どうやら plus リポジトリに入っているようなので以下のコマンドで plus リポジトリからインストールする。
dnf --enablerepo=plus install openldap-servers openldap openldap-clients
- openldap のサービスは slapd で登録されているので、 systemctl status slapd でサービスの状態を確認する。
- 管理ツリーにパスワードを登録する。
- そのままだと何もできないので管理ツリーにログインできるようにパスワードを登録する。
- 管理ツリーのパスワードは ldif ファイルに記述してopenldapにインポートする。
- ldifに平文でパスワードを書くと平文のまま登録されてしまうので、ハッシュ化するなら事前に行う必要がある。
- ハッシュ化したパスワードは以下のコマンドで生成できる。ただし、デフォルトではsha1でハッシュ化する。sha256を使うには別途モジュールが必要らしいが、今回はldapの学習用環境なのでそこまでしない
slappasswd
- 新規にldifファイルを作成し、下記のように編集する。
dn: olcDatabase={0}config,cn=config changetype: modify add: olcRootDN olcRootDN: cn=config dn: olcDatabase={0}config,cn=config changetype: modify add: olcRootPw olcRootPW: <slappasswdで生成したパスワード文字列>
- 「olcDatabase={0}config,cn=config」に olcRootDN と olcRootPw の項目を追加するldifファイル。
- 作成済みの olcDatabase は 「/etc/openldap/slapd.d/cn\=config/」にファイルとして保存されている。
- インストールした環境でみたところ、以下のものが登録済み
- olcDatabase={-1}frontend.ldif
- olcDatabase={0}config.ldif
- olcDatabase={1}monitor.ldif
- olcDatabase={2}mdb.ldif
- 以下のコマンドを実行し、作成したldifファイルを反映する。
ldapadd -Y EXTERNAL -H ldapi:// -f <作成したldifファイル>
- apache directory studio なりのツールで cn=config に接続してみる。パスワードは slappasswd で設定したハッシュ化前のパスワードを使用する。接続できれば設定はできている。
参考ページ
- 環境構築
- sha256モジュールについて