本文說明稽核 Linux 虛擬機器 (VM) 執行個體 SSH 存取權的最佳做法。
Cloud 稽核記錄可供您分析過往活動,是調查影響Trusted Cloud 資源的可疑活動時的重要資訊來源。
以下各節包含最佳做法,有助於維護不可否認的稽核追蹤記錄:
本文著重於 Trusted Cloud by S3NS 專屬或特別適用於 Trusted Cloud安全殼層的實務做法。本文未涵蓋特定 SSH 用戶端或伺服器實作的最佳做法。
啟用 IAP 的資料存取記錄
如要確保使用者嘗試建立 SSH 連線時,IAP 會在 Cloud 稽核記錄中新增項目,請為 Cloud Identity-Aware Proxy API 啟用資料存取記錄。 資料存取記錄預設為停用。除非您擔心記錄檔容量,否則請為含有 VM 執行個體的所有專案啟用資料存取記錄。
監控與 SSH 使用情形相關的稽核記錄項目
使用 SSH 可能會影響 VM 和工作負載的安全性,因此請務必保留成功連線嘗試和存取嘗試失敗的稽核追蹤記錄。在生產環境中,這點尤其重要,因為使用 SSH 應視為敏感動作。
如要追蹤 SSH 存取權,並找出可疑行為,請務必監控與 SSH 相關的記錄項目,包括:
服務 | 方法 | 說明 |
---|---|---|
IAP | AuthorizeUser |
表示透過 IAP TCP 轉送進行連線嘗試。 記錄項目包含使用者裝置、符合要求的存取層級和不符合要求的存取層級詳細資料。 |
OS 登入 | google.cloud.oslogin.dataplane.OsLoginDataPlaneService.CheckPolicy |
表示嘗試登入。 |
OS 登入 | google.cloud.oslogin.dataplane.OsLoginDataPlaneService.StartSession |
表示 OS Login 2FA 驗證開始 |
OS 登入 | google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ContinueSession |
表示已完成 OS Login 雙重驗證 |
Compute Engine | v1.compute.projects.setCommonInstanceMetadata |
如果 projectMetadataDelta 欄位包含 `ssh-keys` 的項目,則這項記錄項目表示專案中繼資料已新增、移除或修改 SSH 金鑰。 |
Compute Engine | v1.compute.instances.setMetadata |
如果 projectMetadataDelta 欄位包含 `ssh-keys` 或 `sshKeys` 的項目,則這項記錄項目表示執行個體中繼資料中新增、移除或修改了 SSH 金鑰。 |
Compute Engine | google.ssh-serialport.v1.connect |
表示嘗試連線至序列主控台 |
IAM |
beta.compute.instances.setIamPolicy ,
v1.compute.instances.setIamPolicy
|
表示 VM 執行個體的 IAM 政策有所變更。IAM 政策異動可能會影響使用者修改執行個體中繼資料的能力。 |
IAM |
SetIamPolicy |
表示專案的 IAM 政策已變更。IAM 政策變更可能會影響使用者修改專案中繼資料,以及專案資料存取稽核記錄設定的能力。 |
所有稽核記錄都包含 principalEmail
欄位,可識別啟動活動的主體。
如要全面掌握 VM 的活動,請將 VM 設定為將 /var/log/messages
和 SSH 伺服器記錄檔匯出至 Cloud Logging,例如使用 Ops Agent。
請注意,視您使用的 Linux 發行版本而定,SSH 伺服器記錄可能會寫入不同的記錄檔 (通常是 /var/log/auth.log
或 /var/log/secure
),且這些記錄檔不在 Ops Agent 預設設定的涵蓋範圍內。