Kubernetes集羣的CA簽名雙向數字證書圖示

Kubernetes 提供了基於 CA 簽名的雙向數字證書的認證方式,一般對於一個安全性要求比較高的集羣,一般會選擇雙向數字證書的認證方式,而不採用 HTTP Base 或 Token 的認證方式的,所以對於搭建集羣的安全設置,這種認證方式是需要掌握的。
api-server 作爲 Master 節點的進程,像 Kubernetes 的其他組件都需要與之通信,所以這些證書的前提都是先在 Master 爲 api-server 生成一個由 CA 證書籤名的數字證書 server.crt,留意圖一的過程。ca.key 是 CA 私鑰,ca.crt 是 CA 證書,通過他們可以生成 api-server 的服務私鑰。
然後配置一個 master_ssl.conf(此處不展開了,裏面的內容主要是 Master 服務器的 hostname,IP 等信息),然後配合上述部署生成的 server.key 生成 server.csr。
最後通過 server.csr 和 ca.crt 和 ca.key 共同簽發服務器的證書 server.crt。
在這裏插入圖片描述
下圖展示的主要是 api-server 啓動參數需要指定的一些文件。數字證書就是我們的主題,他是基於 CA 簽名的數字證書 server.crt,然後就是 CA 證書 ca.crt 和服務私鑰 server.key。注意啓動參數具體需要的是哪個文件。
由於是基於 CA 簽名的,所以客戶端比如 kube-proxy/kubelet 這些進程,同樣也是通過 ca.key 和 ca.crt 來生成 client.key 和 client.crt,客戶端通過這兩個文件,就可以跟 api-server 安全通信了。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章