手当たり次第に書くんだ

飽きっぽいのは本能

Ubuntu 22.04 389 Directory Server LDAP サーバー構築 #1 インスタンスの作成

目次に戻る

Overview

389 Directory Server を使用して LDAP サーバーを構築します。本稿ではインスタンスの作成と起動までを行います。389 Directory Server はポート番号単位で複数のインスタンスを作成でき、プロセスの起動もインスタンス単位となります。

前提条件

  • こちらを参考に基本設定が完了していること。

インストール

389 Directory Server をインストールします。

myadmin@ubuntu:~$ sudo apt -y -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold install 389-ds-base

INF ファイルの作成

INF ファイルのテンプレートを作成します。作成先のディレクトリは任意です。CentOS 8 で 389 Directory Server を構築した際はこの方法を知らず Cockpit からインスタンスを作成していましたが、CentOS 8 でも同じ方法をとれます。

myadmin@ubuntu:~$ dscreate create-template ~/work/ldap/main.inf

デフォルト値

デフォルト値は下記の通りです。一部手動で調整して記載しています。

myadmin@ubuntu:~$ grep -v -e '^\s*#' -e '^\s*$' ~/work/ldap/main.inf | expand | tr -s [:space:] | sed 's/^\s/    /g'
[general]
;defaults = 999999999
;full_machine_name = ubuntu.si1230.com
;start = True
;strict_host_checking = False

[slapd]
;instance_name = localhost
;ldapi = /run/slapd-{instance_name}.socket
;port = 389
;root_password = Directory_Manager_Password
;secure_port = 636
;self_sign_cert = True
;self_sign_cert_valid_months = 24

[backend-userroot]
;create_suffix_entry = False
;require_index = False
;sample_entries = no
;suffix =

設定値

設定例は下記の通りです。

myadmin@ubuntu:~$ tee ~/work/ldap/main.inf <<"EOF"
[general]
full_machine_name = ldap.si1230.com

[slapd]
instance_name = main
root_password = password
self_sign_cert = False

[backend-userroot]
suffix = dc=si1230,dc=com
EOF

インスタンスの作成と起動状態の確認

インスタンスを作成します。

myadmin@ubuntu:~$ sudo dscreate from-file ~/work/ldap/main.inf

インスタンスは作成に成功すると自動的に起動します。systemctl で status を確認します。

myadmin@ubuntu:~$ systemctl status dirsrv@main.service

インスタンスの削除

インスタンスを削除する場合は下記を実行します。

myadmin@ubuntu:~$ sudo dsctl main remove --do-it

正常性確認

LDAP への接続を確認します。-H を接続先を指定しない場合は localhost に接続されますが、後述の TLS 接続の場合は FQDN が必須となる為、localhost の場合でもコマンドのテンプレートとして -H を使用するほうが良いでしょう。もちろん、DNS, hosts 等で名前解決をできるようにしておきます。

myadmin@ubuntu:~$ ldapsearch -H ldap://ldap.si1230.com -D "cn=Directory Manager" -W -b cn=config

-w オプションにすることでコマンド内にパスワードを含めることができます。以降の LDAP 関連のドキュメントでは -w で記載しています。通常利用は推奨しませんが、状況に応じて使い分けて下さい。

myadmin@ubuntu:~$ ldapsearch -H ldap://ldap.si1230.com -D "cn=Directory Manager" -w password -b cn=config

次のステップ

389 Directory Server LDAP サーバー構築 #2 TLS 有効化

目次に戻る

Ubuntu 22.04 389 Directory Server LDAP サーバー構築 #1 インスタンスの作成

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る