stuvusIT.slapd-config

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がmodfiersNamemodifyTimestampcreatorsNamecreateTimestampentryCSNentryUUIDを自動的に維持するかどうか。
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の下でライセンスされています。

著者情報

プロジェクトについて

Configure an entire slapd with the OLC

インストール
ansible-galaxy install stuvusIT.slapd-config
ライセンス
other
ダウンロード
7.4k
所有者
stuvus IT Team - Studierendenvertretung Universität Stuttgart