CentOS 8 の 389 Directory Server で、匿名 BIND の扱い、読み取り専用 BIND ユーザー、書き込み用 BIND ユーザー、ACI によるアクセス制御を整理します。
LDAP 連携では、すべてを Directory Manager で接続するのではなく、用途ごとの BIND ユーザーを作り、権限を分けることが重要です。
この手順は CentOS 8 設定マニュアル の一部として整理しています。
参考書籍
参考書籍
LDAP – 設定・管理・プログラミング
LDAP / OpenLDAP の設定、管理、連携を確認したい場合の参考書籍です。古い書籍のため、価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
匿名 BIND の扱い
匿名アクセスを完全に無効化するか、rootDSE だけ許可するかは運用方針によって分かれます。ここでは rootDSE のみ許可する例を示します。
cat <<'EOF' > allow-anonymous-access.ldif
dn: cn=config
changetype: modify
replace: nsslapd-allow-anonymous-access
nsslapd-allow-anonymous-access: rootdse
EOF
ldapmodify -H ldaps://ldap.si1230.com -D "cn=Directory Manager" -W -f allow-anonymous-access.ldif設定確認
ldapsearch -H ldaps://ldap.si1230.com -D "cn=Directory Manager" -W -b cn=config nsslapd-allow-anonymous-accessBIND ユーザーの作成
cat <<'EOF' > bindusers.ldif
dn: cn=readonly,dc=si1230,dc=com
objectClass: person
cn: readonly
sn: readonly
userPassword: password
dn: cn=writable,dc=si1230,dc=com
objectClass: person
cn: writable
sn: writable
userPassword: password
EOF
ldapadd -H ldaps://ldap.si1230.com -D "cn=Directory Manager" -W -f bindusers.ldifACI の設定
cat <<'EOF' > aci.ldif
dn: dc=si1230,dc=com
changetype: modify
add: aci
aci: (targetattr=*)(version 3.0;acl "readonly";allow(read,search,compare)(userdn="ldap:///cn=readonly,dc=si1230,dc=com");)
-
add: aci
aci: (targetattr=*)(version 3.0;acl "writable";allow(all)(userdn="ldap:///cn=writable,dc=si1230,dc=com");)
EOF
ldapmodify -H ldaps://ldap.si1230.com -D "cn=Directory Manager" -W -f aci.ldif確認
ldapsearch -H ldaps://ldap.si1230.com -D "cn=readonly,dc=si1230,dc=com" -W -b dc=si1230,dc=com
ldapsearch -H ldaps://ldap.si1230.com -D "cn=Directory Manager" -W -b dc=si1230,dc=com aci運用上の注意
- 読み取り専用 BIND ユーザーを SSSD や Postfix などから使う。
- 書き込み権限を持つユーザーは用途を限定する。
- Directory Manager をアプリケーション接続に使わない。
- ACI は強力なので、設定後に必ず実ユーザーで確認する。
この手順は CentOS 8 設定マニュアル の一部として整理しています。
CentOS 8 389 Directory Server 構築 #3 – BIND ユーザーとアクセス制御


