slapd-config
この役割は、OpenLDAPサーバーの全体的なOLCを設定することができます。
OLCを既に作成し、slapdが稼働している必要があります。
この目的のために、slapd-baseを確認してください。
slapd-configは、cn=config
に直接グローバルなslapd設定を作成し、静的バックエンドとしてコンパイルされていない場合はmdbなどのグローバルモジュールをロードします。
その後、モニタバックエンドとMDBが作成され、設定されます。
MDBはオーバーレイの指定をサポートしています。
要件
dpkgまたはpacmanベースのLinuxディストリビューションが必要です。
役割変数
以下は役割全体のグローバル変数です:
名前 |
デフォルト/必須 |
説明 |
slapd_enable_monitor |
true |
モニターモジュールをロード(必要であれば)し、モニタデータベースを設定します。 |
slapd_modules_path |
/usr/lib/ldap |
動的モジュールへのパス、バックエンドが必要でローディングが必要な場合。 |
slapd_additional_modules |
|
MDBおよびモニタ以外で、コンパイルされていない場合にロードするモジュール。 |
slapd_olc_rootdn_password |
:heavy_check_mark: |
OLCにアクセスするためのパスワード。slapd-base によって自動的にエクスポートされません。 |
slapd_monitor_rootdn_password |
:heavy_check_mark: |
モニタデータベースのrootdnパスワード。自動的にハッシュ化されます。 |
slapd_mdb_rootdn_password |
:heavy_check_mark: |
MDBデータベースのrootdnパスワード。自動的にハッシュ化されます。 |
slapd_schemas |
|
ロードするスキーマファイルへのパスの配列。 |
slapd_global_config |
説明を参照 |
各グローバル通過のslapd設定オプション。以下で各説明を参照。 |
slapd_olc_config |
説明を参照 |
OLCデータベースの各グローバル設定値。 |
slapd_monitor_config |
説明を参照 |
モニタデータベースの各グローバル設定値。 |
slapd_mdb_config |
:heavy_check_mark: |
MDBデータベースの各グローバル設定値。 |
slapd_mdb_overlays |
説明を参照 |
MDB用の各モジュール。例を参照。 |
slapd-base変数
このプレイブックの前のステップでslapd-base
が実行されなかった場合は、これらの変数を設定する必要があります。
すべての変数は必須です。
名前 |
デフォルト/必須 |
説明 |
slapd_run_dir |
:heavy_check_mark: |
引数ファイル、PIDファイル、およびldapiソケットのランタイムディレクトリ |
slapd_ldapi_socket |
:heavy_check_mark: |
ローカルslapd管理用のldapi Unixソケット |
slapd_mdb_dir |
:heavy_check_mark: |
MDBが存在するディレクトリ |
slapd_olc_dir |
:heavy_check_mark: |
OLCのLDIFファイルが存在するパス |
slapd_olc_rootdn |
:heavy_check_mark: |
OLCのルートDN |
グローバル設定オプション
グローバルなslapd OLC設定は、異なるセクションに分かれています。
一般的な設定
名前 |
デフォルト/必須 |
説明 |
olcConfigFile |
|
ロードする設定ファイルへのパス。OLCによって置き換えられます。 |
olcConfigDir |
{{slapd_olc_dir}} |
OLCデータベースファイルへのパス。 |
olcArgsFile |
{{slapd_run_dir}}/slapd.args |
slapdはこのファイルに引数を書き込みます。 |
olcPidFile |
{{slapd_run_dir}}/slapd.pid |
slapdはこのファイルにPIDを書き込みます。 |
olcGentleHUP |
FALSE |
TRUE の場合、slapdはSIGHUP で既存の接続を終了させず、終了を待ちます。 |
olcServerID |
0 |
このサーバーのID。マルチマスターレプリケーションがある場合にのみ必要です。 |
セキュリティ関連の設定
名前 |
デフォルト/必須 |
説明 |
olcAllows |
|
許可する機能のセット。 |
olcDisallows |
|
禁止する機能のセット。 |
olcRequires |
bind |
要求する条件のセット。 |
olcRestrict |
|
制限されている操作のリスト。 |
olcSecurity |
ssf=1 simple_bind=128 |
要求するセキュリティ強度のセットを指定します。 |
olcAuthIDRewrite |
|
簡単なユーザー名を認証目的で使用されるLDAP DNに変換するために使用されます。 |
olcAuthzRegexp |
|
簡単なユーザー名を認証目的で使用されるLDAP DNに変換します。複数回指定可能で、効果を得るにはサーバーの再起動が必要です。 |
olcAuthzPolicy |
none |
プロキシ承認に使用するルール。 |
olcLocalSSF |
300 |
LDAPI接続のための推定SSF。 |
olcPasswordHash |
{SSHA} |
パスワード変更の拡張修正に使用する1つ以上のハッシュアルゴリズム。 |
olcPasswordCryptSaltFormat |
%s |
crypt() でパスワードをハッシュ化する際のソルトの形式。 |
TLS設定
名前 |
デフォルト/必須 |
説明 |
olcTLSCertificateFile |
|
slapd用の公開鍵ファイル。 |
olcTLSCertificateKeyFile |
|
slapd用の秘密鍵。 |
olcTLSRandFile |
|
urandom が利用できないときにランダムビットを取得するためのファイル。 |
olcTLSDHParamFile |
|
Diffie-Hellmanの一時鍵交換のための素数を含むファイル。 |
olcTLSCipherSuite |
|
使用するTLS暗号スイート。 |
olcTLSProtocolMin |
|
要求される最小TLSバージョン。デフォルトは最高の可能なレベル。 |
olcTLSCACertificateFile |
|
すべての信頼された証明書機関を含むファイルへのパス。 |
olcTLSCACertificatePath |
|
すべての信頼された証明書機関のファイルを含むディレクトリへのパス。 |
olcTLSCRLCheck |
none |
接続時にCAのCRLをチェックすべきかどうか。 |
olcTLSVerifyClient |
never |
クライアントのIDを検証するタイミング。 |
ログ設定
名前 |
デフォルト/必須 |
説明 |
olcLogLevel |
stats |
各サブシステムのためのログレベル設定。 |
olcLogFile |
|
ログを出力するファイル。slapdは常にstderrにもログを出力します。 |
olcPluginLogFile |
|
slapiプラグインの出力をログするファイル。 |
olcReplogFile |
|
slurpd によって読み取られる可能性があるreplogのファイル。 |
スレッド設定
名前 |
デフォルト/必須 |
説明 |
olcConcurrency |
|
オペレーティングシステムに対するスレッドヒント。Linuxでは使用されません。 |
olcListenerThreads |
1 |
接続をリスニングするためのスレッド数。16コアまでなら1で十分です。 |
olcThreads |
16 |
リクエスト処理のためのCPUスレッド数。 |
olcToolThreads |
1 |
ツールモードで実行時のCPUスレッド数。システムのコア数を超えないようにしてください。 |
タイムアウトと制限
名前 |
デフォルト/必須 |
説明 |
olcIdleTimeout |
0 |
クライアントが何も行わずに切断されるまでの秒数。 |
olcWriteTimeout |
0 |
未解決の書き込みを持つクライアントが、何も行わずに切断されるまでの秒数。 |
olcTimeLimit |
3600 |
slapdがリクエストに応答するために費やす最大秒数。unlimited 値を許可します。 |
olcSizeLimit |
500 |
検索から返す最大エントリ数。 |
接続
名前 |
デフォルト/必須 |
説明 |
olcConnMaxPending |
50 |
匿名セッションでの最大保留リクエスト数。 |
olcConnMaxPendingAuth |
1000 |
認証されたセッションでの最大保留リクエスト数。 |
olcTCPBuffer |
|
TCPバッファのサイズ。オペレーティングシステムはこれを自動的に調整するかもしれません。 |
olcSockbufMaxIncoming |
262143 |
匿名セッションの場合のLDAP PDUの最大サイズ。 |
olcSockbufMaxIncomingAuth |
4194303 |
認証されたセッションの場合のLDAP PDUの最大サイズ。 |
SASL
名前 |
デフォルト/必須 |
説明 |
olcSaslHost |
|
SASL処理に使用される完全修飾ドメイン名。 |
olcSaslRealm |
|
SASL処理のためのSASLレルム。 |
olcSaslSecProps |
|
Cyrus SASLセキュリティプロパティを指定します。 |
olcSaslAuxprops |
|
認証ルックアップに使用するauxpropプラグインの指定。 |
インデックス設定
名前 |
デフォルト/必須 |
説明 |
olcIndexSubstrIfMinLen |
2 |
前部および後部インデックスの最小長。 |
olcIndexSubstrIfMaxLen |
4 |
前部および後部インデックスの最大長。 |
olcIndexSubstrAnyLen |
4 |
任意のインデックス用の長さ。この長さを超える属性はセグメントごとに処理されます。 |
olcIndexSubstrAnyStep |
2 |
任意のルックアップで使用されるステップ。フィルタ文字列の処理されるセグメントのオフセットです。 |
olcIndexIntLen |
4 |
整数インデックスのキー長。 |
その他
名前 |
デフォルト/必須 |
説明 |
olcAttributeOptions |
x-hidden lang- |
属性オプションまたはオプションタグ/範囲プレフィックスのタグ付け。 |
olcReferral |
|
slapdがローカルデータベースを見つけられない場合に返す参照URL。 |
olcReverseLookup |
FALSE |
クライアント名の未確認の逆引きを有効にします。 |
olcRootDSE |
|
ルートDSEのユーザ定義属性を含むLDIFファイルの名前。 |
olcReadOnly |
FALSE |
サーバ全体を読み取り専用モードに設定します。 警告: 一度trueに設定されると、この値はデータベースファイルを変更し、slapdを再起動しない限り戻せません! |
olcLdapSyntaxes |
|
なぜこの属性がここにあるのか真剣に分かりません。インターネット上に文書はありません。 |
データベース設定値
これらの値はすべてのデータベース(OLC、モニタ、MDB)に適用されます。
このセクションではそのすべてを概観します。
各データベースのデフォルト値は下に示されています。
MDBデータベースには、これらのデータベースでのみサポートされる属性もいくつかあります。
一般
名前 |
必須 |
説明 |
olcSuffix |
:heavy_check_mark: |
データベースバックエンドに渡されるクエリのDNサフィックス。OLCやモニタの場合は必須ではありません。 |
olcReadOnly |
:heavy_check_mark: |
このデータベースを読み取り専用モードにします。変更は不可能です。 |
olcHidden |
:heavy_multiplication_x: |
このデータベースへのクエリには応答しません。slapdはこのデータベースの存在を否定します。 |
olcLastMod |
:heavy_check_mark: |
slapdがmodfiersName 、modifyTimestamp 、creatorsName 、createTimestamp 、entryCSN 、entryUUID を自動的に維持するかどうか。 |
olcSubordinate |
:heavy_multiplication_x: |
このデータベースが他のデータベースの従属であるかどうか。 |
セキュリティ
名前 |
必須 |
説明 |
olcSecurity |
:heavy_multiplication_x: |
必要なセキュリティ強度要素のセットを指定します。 |
olcRootDN |
:heavy_check_mark: |
このデータベースのRootDNの名前。 |
olcRootPW |
:heavy_check_mark: |
このデータベースのRootDNのハッシュパスワード。 |
olcRequires |
:heavy_multiplication_x: |
必要な条件のセット。 |
olcRestrict |
:heavy_multiplication_x: |
制限されている操作のリスト。 |
olcAddContentAcl |
:heavy_check_mark: |
操作がエントリの内容に対するACLチェックを実行するかどうか。 |
olcAccess |
:heavy_check_mark: |
このデータベースのためのACLルールの配列。 |
タイムアウトと制限
名前 |
必須 |
説明 |
olcTimeLimit |
:heavy_multiplication_x: |
slapdがリクエストに応答するのにかける最大秒数。unlimited 値を許可します。 |
olcSizeLimit |
:heavy_multiplication_x: |
検索から返す最大エントリ数。 |
olcLimits |
:heavy_multiplication_x: |
操作のイニシエイターまたはベースDNに基づく時間とサイズの制限。 |
Syncrepl
名前 |
必須 |
説明 |
olcSyncrepl |
:heavy_multiplication_x: |
Syncreplメイン設定。 |
olcUpdateDN |
:heavy_multiplication_x: |
レプリカを更新できるDN。rootDNではないことが望ましいです。 |
olcSyncUseSubentry |
:heavy_multiplication_x: |
syncrepl contextCSNをコンテキストエントリではなくサブエントリに保存します。 |
olcUpdateRef |
:heavy_multiplication_x: |
slapdがレプリケートされたデータベースを変更するように求められたときに戻すことができる参照。 |
olcMirrorMode |
:heavy_multiplication_x: |
このデータベースをミラーモードにします。 |
slurpd
名前 |
必須 |
説明 |
olcReplica |
:heavy_multiplication_x: |
|
olcReplicaArgsFile |
:heavy_multiplication_x: |
|
olcReplicaPidFile |
:heavy_multiplication_x: |
|
olcReplicationInterval |
:heavy_multiplication_x: |
|
olcReplogFile |
:heavy_multiplication_x: |
|
その他
名前 |
必須 |
説明 |
olcSchemaDN |
:heavy_multiplication_x: |
エントリのためのサブスキーマサブエントリのDN。 |
olcMaxDerefDepth |
:heavy_multiplication_x: |
フォローする別名の最大数。 |
olcPlugin |
:heavy_multiplication_x: |
slapiプラグインをロードします。 |
olcMonitoring |
:heavy_multiplication_x: |
このデータベースのための監視データを収集します。 |
olcExtraAttrs |
:heavy_multiplication_x: |
検索されない場合でも返す属性を指定します。 |
MDB設定
これらの設定はMDBデータベースのみに適用されます!
名前 |
必須 |
デフォルト |
説明 |
olcDbDirectory |
:heavy_check_mark: |
{{slapd_mdb_dir}} |
ディスク上のデータベースディレクトリへのパス。 |
olcDbNoSync |
:heavy_multiplication_x: |
TRUE |
データが受信された後にすぐには同期しません。 |
olcDbCheckpoint |
:heavy_multiplication_x: |
8192 15 |
データベースをディスクにフラッシュする頻度(KB/分)。 |
olcDbMaxReaders |
:heavy_multiplication_x: |
|
同時にDBにアクセスできるスレッドの最大数。 |
olcDbMaxSize |
:heavy_multiplication_x: |
|
バイト単位でのDBの最大サイズ。 |
olcDbMode |
:heavy_multiplication_x: |
0600 |
データベースファイルのファイルモード。 |
olcDbSearchStack |
:heavy_multiplication_x: |
16 |
検索フィルタ評価中のスタックの深さ。 |
olcDbRtxnSize |
:heavy_multiplication_x: |
|
1回の読み取りトランザクションで処理するエントリの数。 |
olcDbIndex |
:heavy_multiplication_x: |
|
このデータベースで作成するインデックス。 |
各データベースのデフォルト値
名前 |
フロントエンドのデフォルト |
OLCデフォルト |
モニタデフォルト |
MDBデフォルト |
olcSuffix |
|
|
|
:exclamation: |
olcReadOnly |
FALSE |
FALSE |
|
|
olcHidden |
FALSE |
|
|
|
olcLastMod |
TRUE |
TRUE |
|
|
olcSubordinate |
|
|
|
|
olcSecurity |
|
|
|
|
olcRootDN |
|
{{slapd_olc_rootdn}} |
cn=root,cn=monitor |
cn=root,{{olcSuffix}} |
olcRootPW |
|
[Hashed password] |
[Hashed password] |
[Hashed password] |
olcRequires |
|
|
|
|
olcRestrict |
|
|
|
|
olcAddContentAcl |
TRUE |
TRUE |
|
|
olcAccess |
'to * by * read' |
'to * by * none' |
'to * by * none' |
'to * by * none' |
olcTimeLimit |
|
|
|
|
olcSizeLimit |
|
|
|
|
olcLimits |
|
|
|
|
olcSyncrepl |
|
|
|
|
olcUpdateDN |
|
|
|
|
olcSyncUseSubentry |
FALSE |
FALSE |
|
|
olcUpdateRef |
|
|
|
|
olcMirrorMode |
FALSE |
|
|
|
olcReplica |
|
|
|
|
olcReplicaArgsFile |
|
|
|
|
olcReplicaPidFile |
|
|
|
|
olcReplicationInterval |
|
|
|
|
olcReplogFile |
|
|
|
|
olcSchemaDN |
cn=Subschema |
|
|
|
olcMaxDerefDepth |
15 |
15 |
|
|
olcPlugin |
|
|
|
|
olcMonitoring |
FALSE |
FALSE |
|
|
olcExtraAttrs |
|
|
|
|
依存関係
schema2ldif
がインストールされている必要があります。
例プレイブック
- hosts: ldap
roles:
- slapd-config
slapd_modules_path: /usr/lib/openldap
slapd_olc_rootdn_password: water
slapd_mdb_rootdn_password: water
slapd_monitor_rootdn_password: water
slapd_additional_modules: [ 'memberof' ]
slapd_mdb_config:
olcSuffix: "dc=example,dc=com"
slapd_mdb_overlays:
memberof:
olcOverlay: memberof
objectClass: olcMemberOf
olcMemberOfDangling: ignore
ライセンス
この作品は、Creative Commons Attribution-ShareAlike 4.0 International Licenseの下でライセンスされています。
著者情報