A.瀏覽器訪問 kube-apiserver 安全端口


A.瀏覽器訪問 kube-apiserver 安全端口

瀏覽器訪問 kube-apiserver 的安全端口 6443 時,提示證書不被信任:
screenshot
這是因為 kube-apiserver 的 server 證書是我們創建的根證書 ca.pem 簽名的,需要將根證書 ca.pem 導入操作系統,並設置永久信任。對於 Mac,操作如下:

screenshot
再次訪問 https://192.168.1.106:6443/,已信任,但提示 401,未授權的訪問:

screenshot
我們需要給瀏覽器生成一個 client 證書,訪問 apiserver 的 6443 https 端口時使用。

這里使用部署 kubectl 命令行工具時創建的 admin 證書、私鑰和上面的 ca 證書,創建一個瀏覽器可以使用 PKCS#12/PFX 格式的證書:

[k8s@kube-node1 ~]$ openssl pkcs12 -export -out admin.pfx -inkey admin-key.pem -in admin.pem -certfile ca.pem 

將創建的 admin.pfx 導入到系統的證書中。對於 Mac,操作如下:

screenshot
重啟瀏覽器,再次訪問 https://192.168.1.106:6443/,提示選擇一個瀏覽器證書,這里選中上面導入的 admin.pfx:

screenshot
這一次,被授權訪問 kube-apiserver 的安全端口:

screenshot

客戶端選擇證書的原理

  1. 證書選擇是在客戶端和服務端 SSL/TLS 握手協商階段商定的;
  2. 服務端如果要求客戶端提供證書,則在握手時會向客戶端發送一個它接受的 CA 列表;
  3. 客戶端查找它的證書列表(一般是操作系統的證書,對於 Mac 為 keychain),看有沒有被 CA 簽名的證書,如果有,則將它們提供給用戶選擇(證書的私鑰);
  4. 用戶選擇一個證書私鑰,然后客戶端將使用它和服務端通信;



鏈接:https://www.orchome.com/1204
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM