Ubuntu 22.04 に 389 Directory Server のインスタンスを作成する場合、最初に決めるべきものは instance、suffix、管理 DN です。LDAP は Samba、Postfix、SSSD などから参照される内部認証・ディレクトリ基盤になるため、名前空間の決め方が後続の構成に影響します。
この記事は、Ubuntu 22.04 の既存環境で 389 Directory Server の入口設定を読み直すための記事です。新規構築では Ubuntu 26.04 側の記事を優先しつつ、22.04 環境の設定確認や古い構築記録の読み替えに使ってください。
- 389 Directory Server の
instanceとsuffixの意味 - インストールと INF ファイルの作成
dscreateによるインスタンス作成ldapsearchとdsconfでの確認- 後続サービスを見据えた suffix 設計
書籍
LDAP – 設定・管理・プログラミング
LDAP の基礎、ディレクトリ設計、検索、認証連携を体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
389 Directory Server の位置づけ
389 Directory Server は LDAP サーバーです。ユーザー、グループ、メール alias、Samba 用属性などをディレクトリとして管理し、他のサービスから参照できるようにします。
| 項目 | 意味 |
|---|---|
suffix | ディレクトリツリーの基点。例: dc=example,dc=local |
instance | 389 Directory Server の実行単位 |
| Directory Manager | 389 DS の管理者 DN |
| LDAP entry | ユーザー、グループ、OU などのデータ |
入口記事では、後続のユーザー登録や TLS 設定に進む前に、どの suffix を作り、どのインスタンス名で管理するかを確認します。
インストールする
389 Directory Server 本体と、確認用の LDAP クライアントコマンドをインストールします。
sudo apt update
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y 389-ds-base ldap-utilsINF ファイルを作成する
インスタンス作成用の INF ファイルを作成します。instance_name、root_password、suffix は環境に合わせます。
sudo tee /tmp/instance.inf <<'EOF'
[general]
config_version = 2
[slapd]
instance_name = ldap01
root_password = change-me
self_sign_cert = False
[backend-userroot]
suffix = dc=example,dc=local
EOFroot_password は Directory Manager の管理用パスワードです。検証用の値をそのまま残さず、運用環境では管理方法を決めてから設定します。
インスタンスを作成する
dscreate で INF ファイルからインスタンスを作成します。作成後は dsctl と systemd の両方で状態を確認します。
sudo dscreate from-file /tmp/instance.inf
sudo dsctl ldap01 status
sudo systemctl status dirsrv@ldap01 --no-pager389 Directory Server の systemd ユニットは dirsrv@インスタンス名 の形です。この例では dirsrv@ldap01 です。
suffix を確認する
作成した suffix が見えるか確認します。初期状態ではまだユーザーやグループはほとんど入っていないため、ここでは suffix と backend の存在確認を目的にします。
ldapsearch -x -H ldap://localhost -b dc=example,dc=local dn
sudo dsconf ldap01 backend suffix list検索できない場合は、インスタンス状態、待ち受け、suffix の指定、base DN の指定を分けて確認します。
削除して作り直す場合
検証で作り直す場合は、対象インスタンス名を確認してから削除します。削除は戻しにくいため、本番データが入っているインスタンスでは実行しません。
sudo dsctl ldap01 status
sudo dsctl ldap01 remove --do-itsuffix 設計で先に決めること
389 Directory Server の suffix は、LDAP ツリー全体の起点になります。あとから変更するより、最初にドメイン名、組織単位、ユーザーとグループの配置先を決めておく方が安全です。
- DNS ドメインと LDAP suffix をどう対応させるかを決める
- ユーザー、グループ、サービスアカウントを同じ OU に混ぜない
- Samba、SSSD、Postfix など、後続サービスが参照しやすい DN を意識する
- 検証環境でも、本番に近い suffix と OU 構造にしておく
- 管理 DN とサービス用 BIND DN を混同しない
まとめ
389 Directory Server の最初のポイントは、suffix と instance を決めることです。LDAP は後続の Samba、Postfix、SSSD から参照されるため、ここでの名前設計が内部基盤全体に影響します。
22.04 の既存環境を見直すときは、インスタンス名、suffix、Directory Manager、backend の対応を確認します。次の段階で TLS / LDAPS を有効化し、さらにベースエントリー、BIND ユーザー、グループ、ユーザー登録へ進みます。

