新機能:プロジェクトの最新情報についてはTwitterMastodonでご確認ください。

証明書の信頼

プライベートCAによって署名されたサービング証明書を持つTLSサーバーに接続するようにクライアントを構成する場合、サーバーの検証のためにクライアントにCA証明書を提供する必要があります。ca.crt には、信頼する必要がある証明書が含まれている可能性がありますが、ca.crt にアクセスするために、**サーバーと同じ Secret をマウントしないでください**。これは、

  1. その Secret には、サーバーの秘密鍵も含まれており、サーバーのみがアクセスできる必要があるためです。Secret に含まれるサービング証明書と秘密鍵には、必要なPodのみがアクセスできるように、RBACを使用する必要があります。
  2. CA証明書の安全なローテーションは、古いCA証明書と新しいCA証明書の両方を同時に信頼できる必要があることに依存しています。詳細については、FAQ を参照してください。

クライアントを構成する際には、信頼するCA証明書を独立して選択し、フェッチする必要があります。CAを帯域外でダウンロードし、サーバーの秘密鍵と証明書を含む Secretとは別に、Secret または ConfigMap に格納してください。

trust-manager を使用して、これらの証明書を管理し、複数の名前空間に自動的に配布できます。

これにより、サーバーのキーと証明書を含む Secret の内容が改ざんされた場合、クライアントは侵害されたサーバーへの接続に失敗します。

同じ概念は、相互認証TLSのサーバーを構成する場合にも適用されます。サーバーに、クライアント証明書と秘密鍵を含むSecretへのアクセス権を与えないでください。