Docs » Splunk Distribution of the OpenTelemetry Collector の利用開始 » はじめに:Collectorを理解して使用する » 共通設定オプション » TLSを設定する

TLSを設定する 🔗

Crypto TLSは、Collectorの個々のレシーバーまたはエクスポーター内で調整できるさまざまな設定を公開しています。

注釈

相互TLS(mTLS)もサポートされています。

TLS / mTLSを設定する 🔗

デフォルトでは、TLSは有効になっています:

  1. 利用可能な必須およびオプションの設定を確認する

  2. TLS/mTLSの設定を完了するには、TLSクライアントを設定する または TLSサーバーを設定する に進みます

必須の設定 🔗

以下の設定が必要です:

  • insecure。デフォルトでは false です。エクスポーターのHTTPsまたはgRPC接続のクライアントトランスポートセキュリティを有効にするかどうか。

  • cert_fileinsecurefalse に設定されている場合のみ使用します。TLSが必要な接続に使用するTLS認証へのパス。

  • cert_pemcert_file の代替です。証明書の内容をファイルパスの代わりに文字列で指定します。

  • key_fileinsecurefalse に設定されている場合のみ使用します。TLSが必要な接続に使用するTLSキーへのパス。

  • key_pem: key_file の代替です。キーの内容をファイルパスの代わりに文字列で指定します。

追加設定 🔗

認証局 🔗

認証局を定義するには、次を使用します:

  • ca_fileinsecurefalse に設定されている場合のみ使用します。CA 証明書へのパス。

    • クライアントの場合は、これによりサーバー証明書を検証します。

    • サーバーの場合、これはクライアント証明書を検証します。

    • 空の場合、システムルートCAを使用します。

  • ca_pemca_file の代替です。CA証明書の内容をファイルパスの代わりに文字列で指定します。

認証局の定義とシステム認証局の定義を組み合わせるには、次を使用します:

  • include_system_ca_certs_pool。デフォルトでは false です。認証局と一緒にシステム認証局プールをロードするかどうか。

さらに、TLSは有効にするが、サーバーの証明書チェーンの検証はスキップするように設定することもできます。insecure はTLSをまったく使用しないので、insecure と組み合わせることはできません。

  • insecure_skip_verify。デフォルトでは false です。証明書の検証をスキップするかどうか。

TLSのバージョン 🔗

注意

TLS 1.0および1.1の使用は避けてください。どちらも既知の脆弱性のため、非推奨となっています。

TLSバージョンの最小値と最大値を設定できます:

  • min_version。デフォルトでは「1.2」。TLSの最低許容バージョン。

    • オプション:」1.0」、」1.1」、」1.2」、」1.3」

  • max_version。デフォルトでは」」。最大許容TLSバージョン。

    • オプション:」1.0」、」1.1」、」1.2」、」1.3」

暗号スイート 🔗

cipher_suites を使って明示的に暗号スイートを設定することができます。

  • デフォルトでは [] です。空白のままだと、安全なデフォルトリストが使われます。

  • 対応する暗号スイートのリストは、Cipher suites source files を参照してください。

例:

cipher_suites:
  - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
  - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
  - TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256

証明書を再読み込みする 🔗

オプションとして、証明書を再読み込みする期間を指定する reload_interval を使用することができます。

  • 設定されていない場合、証明書はリロードされません。

  • 有効な時間単位は、」ns」、」us」 (または」µs」)、」ms」、」s」、」m」、」h」です。

TLSクライアントを設定する 🔗

エクスポーター でTLSクライアントを設定するには、前のセクションの設定を使用します。

オプションで、server_name_override を設定することもできます。

  • 空でない文字列に設定された場合、リクエスト中の権限のバーチャルホスト名をオーバーライドします。

  • これは通常、テストに使用されます。

例:

exporters:
  otlp:
    endpoint: myserver.local:55690
    tls:
      insecure: false
      ca_file: server.crt
      cert_file: client.crt
      key_file: client.key
      min_version: "1.1"
      max_version: "1.2"
  otlp/insecure:
    endpoint: myserver.local:55690
    tls:
      insecure: true
  otlp/secure_no_verify:
    endpoint: myserver.local:55690
    tls:
      insecure: false
      insecure_skip_verify: true

TLSサーバーを設定する 🔗

コレクタレシーバー でTLSサーバーを設定するには、前のセクションの設定を使用します。

オプションで、次を設定することもできます。

  • client_ca_file。サーバーがクライアント証明書を検証するために使用するTLS証明書へのパス。これによりTLS設定で、ClientCAsとClientAuthが RequireAndVerifyClientCert に設定されます。詳細は https://godoc.org/crypto/tls#Config を参照してください。

  • client_ca_file_reload。デフォルトでは false です。ClientCAsファイルが変更されたときに再読み込みします。

注釈

これらはmTLSに必要です。

例:

receivers:
  otlp:
    protocols:
      grpc:
        endpoint: mysite.local:55690
        tls:
          cert_file: server.crt
          key_file: server.key
  otlp/mtls:
    protocols:
      grpc:
        endpoint: mysite.local:55690
        tls:
          client_ca_file: client.pem
          cert_file: server.crt
          key_file: server.key
  otlp/notls:
    protocols:
      grpc:
        endpoint: mysite.local:55690

さらに詳しく 🔗

利用可能な設定について詳しくは、OTelのGitHubレポで TLSコンフィギュレーション設定 を参照してください。

このページは 2024年08月27日 に最終更新されました。