Apache Directory Studio を使って、LDAP 上に Linux 用のグループとユーザーを作成する手順を整理します。
元々この記事は、OpenLDAP を構築した後に、GUI から posixGroup と posixAccount を追加するためのメモでした。現在の視点では、Apache Directory Studio は LDAP 管理の主役というより、DIT の確認、属性の編集、LDIF の作成、GUI での動作確認に使うツールとして考えると扱いやすいです。
Apache Directory Studio は ApacheDS そのものではありません。Apache Directory Studio は Eclipse ベースの LDAP browser / directory client で、OpenLDAP や Active Directory などの LDAP サーバーへ接続して、エントリの参照、作成、編集、削除、LDIF 編集を行うためのクライアントです。
LDAP / OpenLDAP の設定、管理、連携を確認したい場合の参考書籍です。古い書籍のため、価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
前提
この記事では、LDAP サーバー側に次のような OU が既に存在している前提で説明します。DN は環境に合わせて読み替えてください。
dc=example,dc=com
ou=groups,dc=example,dc=com
ou=users,dc=example,dc=comまた、管理用 bind DN と password が分かっている必要があります。古い OpenLDAP 構成では rootdn / rootpw として設定していたものに相当します。
LDAP サーバーへ接続する
LDAP、New Connection を選ぶ
接続先が LDAPS の場合は、ポートや暗号化設定、証明書の信頼設定も確認します。検証環境では自己署名証明書を使うこともありますが、本番運用では証明書の発行元と更新手順を決めておく必要があります。
| 項目 | 例 | 意味 |
|---|---|---|
| Hostname | ldap.example.com | LDAP サーバーの FQDN または IP アドレス |
| Port | 389 / 636 | LDAP または LDAPS の待受ポート |
| Bind DN | cn=admin,dc=example,dc=com | 管理操作に使う DN |
| Base DN | dc=example,dc=com | 検索や表示の起点 |
グループを追加する
Linux のグループに相当する LDAP エントリは、一般的に posixGroup を使います。ここでは GROUP01 というグループを作る例にします。
ou=groups を右クリックする
New、New Entry... を選ぶ
Create entry from scratch を選ぶ
top と posixGroup を追加する
cn=GROUP01 を指定する
gidNumber に Linux の GID に相当する数値を設定する
LDIF で書くと、次のようなエントリです。
dn: cn=GROUP01,ou=groups,dc=example,dc=com
objectClass: top
objectClass: posixGroup
cn: GROUP01
gidNumber: 1000ユーザーを追加する
Linux のユーザーに相当する LDAP エントリは、posixAccount を中心に作成します。ここでは USER01 を GROUP01 に所属させる例にします。
ou=users を右クリックする
New、New Entry... を選ぶ
Create entry from scratch を選ぶ
top、account、posixAccount を追加する
uid=USER01 を指定する
cn、uidNumber、gidNumber、homeDirectory、loginShell を設定する
LDIF で書くと、次のような形になります。
dn: uid=USER01,ou=users,dc=example,dc=com
objectClass: top
objectClass: account
objectClass: posixAccount
uid: USER01
cn: USER01
uidNumber: 1000
gidNumber: 1000
homeDirectory: /home/USER01
loginShell: /bin/bashpassword 属性の扱い
Apache Directory Studio では、userPassword 属性を追加し、ダブルクリックして password editor から値を設定できます。ハッシュ方式を選べる環境では、LDAP サーバー側の対応と認証方式に合わせて選びます。
ただし、password を GUI で直接設定する運用は、少人数の検証や初期構築では便利ですが、継続運用では監査性や再現性が弱くなります。手順として残す場合は、LDIF、管理コマンド、パスワード変更フローを分けて考える方が安全です。
GUI と LDIF の使い分け
Apache Directory Studio は便利ですが、すべての LDAP 管理を GUI に寄せる必要はありません。GUI と LDIF / CLI は役割を分けると扱いやすくなります。
| 方法 | 向いている用途 | 注意点 |
|---|---|---|
| Apache Directory Studio | DIT の確認、属性の確認、少数エントリの手動編集 | 手作業になりやすく、変更履歴が残りにくい |
| LDIF | 同じ構造の再投入、レビュー、バックアップ、差分管理 | DN と属性の設計を理解しておく必要がある |
| ldapsearch / ldapmodify | 自動化、検証、スクリプト化 | コマンドのオプションや bind 情報の扱いに注意が必要 |
運用上の注意点
- GUI で作ったエントリも、できるだけ LDIF として残す
uidNumberとgidNumberの重複を避ける- 管理用 bind DN を日常作業で使い回さない
- LDAPS または StartTLS で認証情報を保護する
- password 変更とアカウント作成を同じ作業として混ぜない
- SSSD や Samba から参照する場合は、必要な objectClass と属性を先に整理する
まとめ
Apache Directory Studio は、LDAP のツリー構造や属性を目で確認しながら操作できるため、OpenLDAP の学習や検証には今でも便利です。特に、posixGroup と posixAccount のようなエントリを作り、実際にどの属性が必要になるのかを確認する用途に向いています。
一方で、継続運用では GUI だけに依存せず、LDIF や ldapmodify に落とせる形で管理した方が安全です。Apache Directory Studio は、LDAP 管理の唯一の手段ではなく、構造を見ながら理解し、必要に応じて手動修正するためのクライアントとして使うのがよいと思います。
参考
関連記事
- Apache Directory Studio は開発終了なのか – LDAP クライアントの現状と使いどころ
- Mac で Apache Directory Studio が起動しない時の確認点 – Apple Silicon、Java、LDAP / LDAPS
- Mac で Apache Directory Studio を x64 Java で起動する方法 – Apple Silicon の回避策
- Ubuntu 26.04 SSSD による LDAP 連携
- LDAP より SAML/OIDC が高セキュリティという幻想 – 認証方式は適材適所で選ぶ


