メッシュ内証明書の管理

多くのユーザーは、環境内で使用される証明書の種類を管理する必要があります。たとえば、一部のユーザーは楕円曲線暗号(ECC)の使用を必要とし、他のユーザーはRSA証明書により強力なビット長を使用する必要がある場合があります。環境内の証明書を構成することは、ほとんどのユーザーにとって困難な作業となる可能性があります。

このドキュメントは、メッシュ内通信での使用のみを目的としています。ゲートウェイでの証明書管理については、セキュアゲートウェイのドキュメントを参照してください。ワークロード証明書を生成するために istiod が使用する CA の管理については、プラグイン CA 証明書のドキュメントを参照してください。

istiod

ルートCA証明書なしでIstioがインストールされると、istiodはRSA 2048を使用して自己署名CA証明書を生成します。

自己署名CA証明書のビット長を変更するには、istioctlに提供されるIstioOperatorマニフェストか、istio-discoveryチャートのHelmインストール中に使用される値ファイルを変更する必要があります。

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  values:
    pilot:
      env:
        CITADEL_SELF_SIGNED_CA_RSA_KEY_SIZE: 4096

サイドカー

サイドカーはメッシュ内通信用の独自の証明書を管理するため、サイドカーは秘密鍵と生成された証明書署名要求(CSR)を管理する責任があります。サイドカーインジェクターは、この目的のために使用される環境変数を注入するように変更する必要があります。

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  meshConfig:
    defaultConfig:
      proxyMetadata:
        CITADEL_SELF_SIGNED_CA_RSA_KEY_SIZE: 4096

署名アルゴリズム

デフォルトでは、サイドカーはRSA証明書を作成します。これをECCに変更したい場合は、ECC_SIGNATURE_ALGORITHMECDSA に設定する必要があります。

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  meshConfig:
    defaultConfig:
      proxyMetadata:
        ECC_SIGNATURE_ALGORITHM: "ECDSA"

ECC_CURVE でサポートされるのは P256 と P384 のみです。

RSA署名アルゴリズムを保持し、RSAキーサイズを変更したい場合は、WORKLOAD_RSA_KEY_SIZE の値を変更できます。

この情報は役に立ちましたか?
何か改善のための提案はありますか?

フィードバックありがとうございます!