的安全最佳實務 Systems Manager - AWS Systems Manager

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

的安全最佳實務 Systems Manager

AWS Systems Manager 提供許多安全功能,供您在開發和實作自己的安全政策時考慮。以下最佳實務為一般準則,並不代表完整的安全解決方案。這些最佳實務可能不適用或無法滿足您的環境需求,因此請將其視為實用建議就好,而不要當作是指示。

Systems Manager 預防性安全最佳實務

的下列最佳實務 Systems Manager 有助於防止安全事件。

實作最低權限存取

授予許可時,您可以決定誰要取得哪些許可 Systems Manager 的費用。您允許針對這些資源啟用允許執行的動作。因此,您只應授與執行任務所需的許可。對降低錯誤或惡意意圖所引起的安全風險和影響而言,實作最低權限存取是相當重要的一環。

下列工具可用來實作最低權限存取:

使用建議的 設定 SSM Agent 設定為使用代理時

如果您設定 SSM Agent 若要使用代理,請使用 no_proxy變數搭配 Systems Manager 執行個體中繼資料服務的 IP 地址,以確保呼叫 Systems Manager 不會接受代理服務的身分。

如需詳細資訊,請參閱 設定 SSM Agent 在 Linux 節點上使用代理設定 SSM Agent 將代理用於 Windows Server 執行個體

使用 SecureString 參數加密和保護秘密資料

In (入) Parameter Store是 的功能 AWS Systems Manager, SecureString 參數是任何需要以安全方式儲存和參考的敏感資料。如果您有資料不希望使用者更改或以純文字參考,例如密碼或授權金鑰,請使用 SecureString 資料類型建立這些參數。Parameter Store 使用 AWS KMS key in AWS Key Management Service (AWS KMS) 來加密參數值。在加密參數值 AWS 受管金鑰 時, AWS KMS 會使用客戶受管金鑰或 。為了最大限度地提高安全性,我們建議您使用自己的KMS金鑰。如果您使用 AWS 受管金鑰,則任何具有執行 許可的使用者 GetParameterGetParameters 帳戶中的動作可以檢視或擷取所有SecureString參數的內容。如果您使用客戶受管金鑰來加密安全SecureString值,則可以使用IAM政策和金鑰政策來管理加密和解密參數的許可。

使用 時,更難為這些操作建立存取控制政策 AWS 受管金鑰。例如,如果您使用 AWS 受管金鑰 加密SecureString參數,且不希望使用者使用SecureString參數,則使用者的IAM政策必須明確拒絕存取預設金鑰。

如需詳細資訊,請參閱 限制對 的存取 Parameter Store 使用 IAM 政策的參數如何 AWS Systems Manager Parameter Store 在 AWS KMS AWS Key Management Service 開發人員指南 中使用 。

定義文件參數 allowedPattern 的 allowedValues 和

您可以定義 allowedValues和 來驗證 Systems Manager 文件 (SSM 文件) 中參數的使用者輸入allowedPattern。對於 allowedValues,您可以定義參數允許的值陣列。如果使用者輸入不允許的值,則無法開始執行。對於 allowedPattern,您可以定義規則運算式,以驗證使用者輸入是否符合參數定義的模式。如果使用者輸入不符合允許的模式,則無法開始執行。

如需 allowedValuesallowedPattern 的更多相關資訊,請參閱資料元素和參數

封鎖文件的公有共用

除非您的使用案例需要允許公有共用,否則建議您在 Systems Manager 文件主控台的偏好設定區段中開啟SSM文件的區塊公有共用設定。

使用 Amazon Virtual Private Cloud (Amazon VPC) 和VPC端點

您可以使用 Amazon VPC 將 AWS 資源啟動至您定義的虛擬網路。這個虛擬網路與您在資料中心中操作的傳統網路非常相似,且具備使用 AWS可擴展基礎設施的優勢。

透過實作VPC端點,您可以將 VPC 私下連線至 支援的 AWS 服務 和 提供的VPC端點服務, AWS PrivateLink 而不需要網際網路閘道、NAT裝置、VPN連線或 AWS Direct Connect 連線。您 中的執行個體VPC不需要公有 IP 地址即可與 服務中的資源通訊。您的 VPC與其他 服務之間的流量不會離開 Amazon 網路。

如需 Amazon VPC 安全性的詳細資訊,請參閱 Amazon VPC使用者指南 中的使用 Systems Manager VPC端點和 Amazon 中的網際網路流量隱私權來改善EC2執行個體的安全性 VPC

Restrict Session Manager 使用者使用互動式命令和特定工作階段文件進行SSM工作階段

Session Manager, 的功能 AWS Systems Manager提供數種方法來啟動受管節點的工作階段。為了獲得最安全的連線,您可以要求使用者使用互動式命令方法來連線,以限制使用者與特定命令或命令序列的互動。這可以協助您管理使用者可採取的互動動作。如需詳細資訊,請參閱啟動工作階段 (互動和非互動式命令)

為了提高安全性,您可以限制 Session Manager 存取特定 Amazon EC2執行個體和特定 Session Manager 工作階段文件。您授予或撤銷 Session Manager 使用 AWS Identity and Access Management (IAM) 政策以這種方式存取 。如需詳細資訊,請參閱步驟 3:控制工作階段對受管節點的存取權

提供 Automation 工作流程的臨時節點許可

在自動化的工作流程期間, 的功能為 AWS Systems Manager,您的節點可能需要該執行所需的許可,但不需要其他 的許可 Systems Manager 操作。例如,自動化工作流程可能需要節點在工作流程期間呼叫特定API操作或特別存取 AWS 資源。如果這些呼叫或資源是您想要限制存取的呼叫或資源,您可以為 Automation Runbook 本身內的節點提供臨時的補充許可,而不是將許可新增至IAM執行個體設定檔。在 Automation 工作流程結束時,暫時許可會移除。如需詳細資訊,請參閱 AWS 管理和管控部落格中的提供 AWS Systems Manager Automation 的臨時執行個體許可

保留 AWS 和 Systems Manager 工具

AWS 定期發行更新版本的工具和外掛程式,您可以在 AWS 和 中使用 Systems Manager 操作。將這些資源保持在最新狀態,可確保帳戶中的使用者和節點可以存取這些工具的最新功能和安全功能。

  • SSM Agent – AWS Systems Manager 客服人員 (SSM Agent) 是可在 Amazon Elastic Compute Cloud (AmazonEC2) 執行個體、內部部署伺服器或虛擬機器 (VM) 上安裝和設定的 Amazon 軟體。SSM Agent 讓 成為 Systems Manager 更新、管理和設定這些資源。我們建議您至少每兩週檢查一次新版本或自動更新代理程式。如需相關資訊,請參閱 自動化 SSM Agent 更新。我們也建議驗證 SSM Agent 作為更新程序的一部分。如需相關資訊,請參閱 驗證 SSM Agent 的簽章

  • AWS CLI – AWS Command Line Interface (AWS CLI) 是一種開放原始碼工具,可讓您 AWS 服務 使用命令列 Shell 中的命令與 互動。若要更新 AWS CLI,請執行與安裝 相同的命令 AWS CLI。建議您在本機電腦上建立排程任務,至少每兩週執行一次適合您作業系統的命令。如需安裝命令的相關資訊,請參閱 使用者指南 中的安裝 AWS CLI 版本 2AWS Command Line Interface

  • AWS Tools for Windows PowerShell – 適用於 Windows 的工具 PowerShell 是一組 PowerShell 模組,其建置在 AWS SDK為 公開的功能上NET。 AWS Tools for Windows PowerShell 可讓您在來自 PowerShell 命令列的資源上編寫操作 AWS 指令碼。定期發行 Tools for Windows 的更新版本 PowerShell 時,您應該更新在本機執行的版本。如需詳細資訊,請參閱在 Windows AWS Tools for Windows PowerShell 上更新 或在 Linux AWS Tools for Windows PowerShell 上更新 或 macOS IAM政策模擬器使用者指南 中的

  • Session Manager 外掛程式 – 如果您組織中具有使用許可的使用者 Session Manager 想要使用 連線到節點 AWS CLI,他們必須先安裝 Session Manager 本機電腦上的外掛程式。若要更新外掛程式,請執行與用於安裝外掛程式相同的命令。建議您在本機電腦上建立排程任務,至少每兩週執行一次適合您作業系統的命令。如需相關資訊,請參閱 安裝Session Manager外掛程式 AWS CLI

  • CloudWatch 代理程式 – 您可以設定和使用 CloudWatch 代理程式從EC2執行個體、內部部署執行個體和虛擬機器 () 收集指標和日誌VMs。這些日誌可以傳送到 Amazon CloudWatch Logs 進行監控和分析。我們建議您至少每兩週檢查一次新版本或自動更新代理程式。如需最簡單的更新,請使用 AWS Systems Manager 快速設定。如需相關資訊,請參閱 AWS Systems Manager Quick Setup

Systems Manager 監控和稽核最佳實務

的下列最佳實務 Systems Manager 有助於偵測潛在的安全漏洞和事件。

識別和稽核您的所有 Systems Manager resources

識別 IT 資產是控管和保障安全的重要環節。您需要識別您的所有 Systems Manager 資源,以評估其安全狀態,並針對潛在弱點區域採取行動。

您可使用標籤編輯器來識別重視安全或重視稽核的資源,接著在需要搜尋上述資源時運用這些標籤。如需詳細資訊,請參閱《AWS Resource Groups 使用者指南》中的尋找要加上標籤的資源

為您的 建立資源群組 Systems Manager 的費用。如需詳細資訊,請參閱什麼是 Resource Groups?

使用 Amazon 監控工具實作 CloudWatch 監控

監控是維護 的可靠性、安全性、可用性和效能的重要部分 Systems Manager 和您的 AWS 解決方案。Amazon CloudWatch 提供數種工具和服務來協助您監控 Systems Manager 和您的其他 AWS 服務。如需詳細資訊,請參閱 將節點日誌傳送至統一 CloudWatch 日誌 (CloudWatch 客服人員)使用 Amazon 監控 Systems Manager 事件 EventBridge

使用 CloudTrail

AWS CloudTrail 提供使用者、角色或 AWS 服務 中 所採取動作的記錄 Systems Manager。 使用 收集的資訊 CloudTrail,您可以判斷向 提出的請求 Systems Manager、提出請求的 IP 地址、提出請求的人員、提出請求的時間,以及其他詳細資訊。如需詳細資訊,請參閱使用 記錄 AWS Systems Manager API通話 AWS CloudTrail

開啟 AWS Config

AWS Config 可讓您評估、稽核和評估 AWS resources. AWS Config monitors 資源組態的組態,讓您根據所需的安全組態評估記錄的組態。使用 AWS Config,您可以檢閱 AWS 資源之間組態和關係的變更、調查詳細的資源組態歷史記錄,並根據內部準則中指定的組態來判斷整體合規性。如此一來,您就能輕鬆進行合規稽核、安全分析、變更管理和操作故障診斷的程序。如需詳細資訊,請參閱《AWS Config 開發人員指南》中的使用主控台設定 AWS Config。指定要記錄的資源類型時,請務必包含 Systems Manager 的費用。

監控 AWS 安全建議

您應該定期檢查張貼在 Trusted Advisor 中的安全建議 AWS 帳戶。您可以使用 以程式設計方式執行此操作describe-trusted-advisor-checks

此外,請主動監控註冊到每個 的主要電子郵件地址 AWS 帳戶。 AWS 將使用此電子郵件地址與您聯絡,以了解可能會影響您的新安全問題。

AWS 具有廣泛影響的操作問題會發佈在 AWS Service Health Dashboard 上。系統也會透過 Personal Health Dashboard,將操作問題張貼至個別帳戶。如需詳細資訊,請參閱 AWS Health 文件