"Access"
- 登入:SSH 金鑰、預設使用者、建立後加金鑰與不放金鑰時的登入服務
雲端主機建立頁 SSH 金鑰欄位的幾個選項(讓業者產生、上傳、貼上、不放金鑰)各自把什麼放進主機、私鑰由誰保管,映像檔決定的預設使用者名稱,建立之後還能不能加金鑰、金鑰遺失時剩下哪些入口,以及完全不放金鑰時靠業者的哪些服務登入
- 伺服器管理通道的設計:網路可達性、通道授權、主機登入驗證三層的做法與選擇,以及救援入口
與雲端廠商無關、適用於雲端 VM、地端主機與 VPS 的管理員登入通道設計:拆成網路可達性、通道授權與主機登入驗證的模型,各層的做法(來源白名單、跳板機、VPN、身分感知代理、代理程式反向連線、SSH 憑證)、更換 port 與 fail2ban 改不了的部分,依存取者身分、連線送達方式、收回方式選擇組合的依據,以及移除公開 IP 之後的出站路徑、切換順序、救援入口、組織護欄與稽核
- OpenSSH 內建 CA 的 SSH 憑證導入:CA 金鑰、sshd 設定、簽發、principal、撤銷與主機憑證
用 OpenSSH 自帶的 ssh-keygen 與 sshd 建立 SSH 憑證的完整流程:使用者 CA 與主機 CA 的金鑰怎麼產生與保管、sshd 的 TrustedUserCAKeys 與 AuthorizedPrincipalsFile、簽發時的識別字串與有效期、憑證外洩時用 KRL 撤銷,以及用主機憑證取代逐台確認指紋,以及導入順序與兩個會讓所有人登不進去的設定:AuthorizedPrincipalsFile 的讀取權限、RevokedKeys 指的檔案不存在
- 建立主機之前的檢查:建好就改不了的設定、登入路徑上各服務的支援組合、兩條登入路徑各自依賴的元件,以及容量稀缺時的取捨
在建立頁按下建立之前,把位置、機型與映像檔、網路、登入、安全開機各篇的選項串成幾項檢查:哪些設定建立之後只能重建、怎麼查,登入用的業者服務各自支援哪些機型與作業系統、元件狀態正常為什麼不代表支援,兩條登入路徑各自依賴哪些元件、哪些仍然共用,以及機型容量難取得時設定怎麼選;Oracle Cloud、Google Cloud 與 AWS 各自查這些事的位置
- Identity-Aware Proxy(身分感知代理)
要讓管理員或使用者不經公開入口連到內部主機與服務、評估把存取控制從來源 IP 改成帳號身分時,查身分感知代理的連線路徑、前提與代價
- Bastion Host(跳板機)
內部主機不想各自對外開管理 port、要設定 ProxyJump 經由跳板機連線、判斷 agent forwarding 的風險,或要評估自建跳板機與改用身分感知代理的取捨時,查跳板機的連線方式、暴露面與維運責任
- SSH Certificate(SSH 憑證)
主機多、人員常異動而逐台收回 authorized_keys 跟不上,或要讓 SSH 登入權限自動到期時,查 SSH CA 簽發短期憑證的運作方式與導入時要決定的事
- Serial Console(序列主控台)
SSH 因為防火牆、sshd 設定或磁碟滿而連不進主機,或要規劃管理通道斷掉時的備用路徑時,查序列主控台與頻外管理介面的用法與它本身的暴露面
- Kubernetes RBAC(角色型存取控制)
要決定誰能對叢集裡的哪些物件做什麼、或查某個帳號為什麼被拒絕或為什麼權限過大時,查 Kubernetes RBAC 的 Role、ClusterRole、binding 與動詞資源的組成