TLSを設定する 🔗
Crypto TLSは、Collectorの個々のレシーバーまたはエクスポーター内で調整できるさまざまな設定を公開しています。
注釈
相互TLS(mTLS)もサポートされています。
TLS / mTLSを設定する 🔗
デフォルトでは、TLSは有効になっています:
利用可能な必須およびオプションの設定を確認する
TLS/mTLSの設定を完了するには、TLSクライアントを設定する または TLSサーバーを設定する に進みます
必須の設定 🔗
以下の設定が必要です:
insecure
。デフォルトではfalse
です。エクスポーターのHTTPsまたはgRPC接続のクライアントトランスポートセキュリティを有効にするかどうか。gRCPについては、Golangのgrpc.WithInsecure() を参照してください。
cert_file
。insecure
がfalse
に設定されている場合のみ使用します。TLSが必要な接続に使用するTLS認証へのパス。cert_pem
。cert_file
の代替です。証明書の内容をファイルパスの代わりに文字列で指定します。key_file
。insecure
がfalse
に設定されている場合のみ使用します。TLSが必要な接続に使用するTLSキーへのパス。key_pem
:key_file
の代替です。キーの内容をファイルパスの代わりに文字列で指定します。
追加設定 🔗
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コンフィギュレーション設定 を参照してください。