信任憑證
當配置客戶端以連線到具有由私有 CA 簽署的伺服器憑證的 TLS 伺服器時,您需要向客戶端提供 CA 憑證,以便驗證伺服器。ca.crt
可能包含您需要信任的憑證,但請勿掛載與伺服器相同的 Secret
來存取 ca.crt
。這是因為
- 該
Secret
也包含伺服器的私鑰,私鑰應該僅限伺服器存取。您應該使用 RBAC 來確保包含伺服器憑證和私鑰的Secret
只能由需要它的 Pod 存取。 - 安全地輪換 CA 憑證依賴於能夠同時信任舊 CA 憑證和新 CA 憑證。詳情請參閱常見問題解答。
配置客戶端時,您應該獨立選擇並取得您想要信任的 CA 憑證。將 CA 憑證帶外下載,並將其儲存在與包含伺服器私鑰和憑證的 Secret
分開的 Secret
或 ConfigMap
中。
trust-manager 可用於管理這些憑證,並自動將它們分發到多個命名空間。
這可確保如果包含伺服器金鑰和憑證的 Secret
中的資料遭到竄改,客戶端將無法連線到已遭入侵的伺服器。
當配置伺服器進行相互驗證的 TLS 時,也適用相同的概念;請勿讓伺服器存取包含客戶端憑證和私鑰的 Secret。