openldap

提供: 個人的記録
2022年10月23日 (日) 15:15時点におけるGonbe (トーク | 投稿記録)による版 (インストール)

移動: 案内検索

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で生成したパスワード文字列>

dn: 
  • 「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モジュールについて