AWS Systems Manager Session Manager - AWS Systems Manager

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

AWS Systems Manager Session Manager

Session Manager是完全受控的 AWS Systems Manager 功能。透過 Session Manager,您可以管理 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體、邊緣裝置、內部部署伺服器和虛擬機器。您可以使用互動式按一下瀏覽器型殼層或 AWS Command Line Interface (AWS CLI)。 Session Manager提供安全且可稽核的節點管理,無需開啟輸入連接埠、維護防禦主機或管理 SSH 金鑰。 Session Manager此外,您還可以遵守需要受控節點存取權限的公司政策、嚴格的安全性做法,以及具有節點存取詳細資料的完全可稽核記錄檔,同時為使用者提供對受管理節點的簡單一鍵跨平台存取。若要開始使用 Session Manager,請開啟 Systems Manager 主控台。在導覽窗格中,選擇 Session Manager

Session Manager 如何為我的組織帶來益處?

Session Manager 提供這些好處:

  • 使用 IAM 政策集中存取對受管節點的控制權。

    管理員有一個單一位置授權和撤銷對受管節點的存取權。只使用 AWS Identity and Access Management (IAM) 政策,您可以控制組織中可以使用哪些個別使用者或群組,以Session Manager及他們可以存取哪些受管節點。

  • 不需要開啟傳入連接埠和不需要管理堡壘主機或 SSH 金鑰

    開啟傳入 SSH 連接埠和遠端 PowerShell 連接埠讓您的受管節點上大幅增加未經授權實體或惡意命令在受管節點上執行的風險。Session Manager 可藉由關閉這些傳入連接埠協助您改善您的安全狀態,讓您免於管理 SSH 金鑰和憑證,堡壘主機以及跳接方塊。

  • 從主控台和 CLI 使用一鍵式受管節點存取

    使用主 AWS Systems Manager 控台或 Amazon EC2 主控台,只要按一下即可開始工作階段。使用 AWS CLI,您也可以啟動執行單一指令或一系列指令的工作階段。由於受管節點的許可是透過 IAM 政策提供而不是 SSH 金鑰或其他機制,因此連線時間可大幅降低。

  • 連線到混合多雲端環境中的 Amazon EC2 執行個體和非 EC2 節點

    您可以連線到混合多雲端環境中的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體和非 EC2 節點。

    若要使用 Session Manager 連線到非 EC2 節點,您必須先啟用進階執行個體層。使用進階執行個體層會產生費用。但是,使用 Session Manager 連線到 EC2 執行個體無需額外收費。如需相關資訊,請參閱設定執行個體方案

  • 網路埠轉遞

    將受管節點內的任何連接埠重新引導至用戶端上的本機連接埠。之後,連線到本機連接埠並存取正在節點內執行的伺服器應用程式。

  • 對 Windows、Linux 和 macOS 的跨平台支援

    Session Manager 透過單一工具提供對 Windows、Linux 和 macOS 的支援。例如,您不需要在 Linux 和 macOS 受管節點上使用 SSH 用戶端或在 Windows Server 受管節點上使用 RDP 連線。

  • 記錄和稽核工作階段的活動

    為了滿足組織中的操作或安全需求,您可能需要提供與您的受管節點做連結的記錄和在受管節點上執行的指令記錄。當組織中的使用者開始或結束工作階段時,您也會接收到通知。

    記錄和稽核功能透過提供以下 AWS 服務進行整合︰

    • AWS CloudTrail— AWS CloudTrail 擷取在您的 Session Manager API 呼叫的相關資訊, AWS 帳戶 並將其寫入存放在您指定的 Amazon 簡單儲存服務 (Amazon S3) 儲存貯體中的日誌檔。一個存儲桶用於您帳戶的所有 CloudTrail 日誌。如需詳細資訊,請參閱 使用記錄 AWS Systems Manager API 呼叫 AWS CloudTrail

    • Amazon Simple Storage Service - 您可以選擇將工作階段日誌資料存放在所選的 Amazon Simple Storage Service (Amazon S3) 儲存貯體中,用於偵錯和疑難排解。透過使用 AWS KMS key,日誌資料可包含或不含加密金鑰傳送到您的 Amazon Simple Storage Service (Amazon S3) 儲存貯體。如需詳細資訊,請參閱 使用 Amazon Simple Storage Service (Amazon S3) (主控台) 記錄工作階段資料

    • Amazon CloudWatch 日誌 — CloudWatch 日誌可讓您監控、存放和存取各種日誌檔 AWS 服務。您可以將工作階段記錄資料傳送至 CloudWatch 記錄檔記錄群組,以進行偵錯和疑難排解。您可以使用 KMS 金鑰將記錄資料傳送至您的記錄群組, AWS KMS 加密或不加密。如需詳細資訊,請參閱 使用 Amazon CloudWatch 日誌 (主控台) 記錄工作階段資料

    • Amazon EventBridgeAmazon 簡易通知服務 — EventBridge 可讓您設定規則,以偵測指定 AWS 資源何時發生變更。您可以建立一個規則來偵測當您的組織中的使用者開始或停止工作階段,然後透過 Amazon SNS (例如,文字或電子郵件訊息) 接收到有關事件的通知。您也可以設定 CloudWatch事件以啟動其他回應。如需詳細資訊,請參閱 使用 Amazon 監控工作階段活動 EventBridge (主控台)

    注意

    透過連接埠轉送或 SSH 連線的 Session Manager 工作階段無法使用日誌記錄功能。這是因為 SSH 會加密所有工作階段資料,Session Manager 僅用作 SSH 連線的通道。

誰應該使用Session Manager?

  • 任何想要改善安全性和稽核狀態、透過集中管理節點上的存取控制來減少營運開銷,以及減少傳入節點存取的任何 AWS 客戶。

  • 資訊安全專家想要監控並追蹤受管節點存取及活動、關閉受管節點的傳入連接埠、或啟動非公有 IP 地址直接連接受管節點。

  • 管理員想要從單一位置取得或撤銷授權或有意替 Linux、macOS 和 Windows Server 受管節點的使用者提供解決方案。

  • 想要從瀏覽器按一下或 AWS CLI 不提供安全殼層金鑰即可連線到受管理節點的使用者。

Session Manager有哪些主要功能?

  • 對 Windows Server、Linux 和 macOS 受管節點的支援

    Session Manager 可讓您建立安全連線,以連線到 Amazon Elastic Compute Cloud (EC2) 執行個體、邊緣裝置、內部部署伺服器和虛擬機器。如需支援的作業系統類型清單,請參閱 設定 Session Manager

    注意

    針對現場部署機器所提供的 Session Manager 支援僅適用於進階執行個體層。如需相關資訊,請參閱開啟 advanced-instances 方案

  • 主控台、CLI 和 SDK 存取 Session Manager 功能

    您可以利用下列方式來使用 Session Manager:

    AWS Systems Manager 主控台包含存取所有 Session Manager 功能,管理員和終端使用者皆適用。您可以使用 Systems Manager 主控台來執行任何與您的工作階段相關的任務。

    Amazon EC2 主控台能讓終端使用者連線至已獲得工作階段許可的 EC2 執行個體。

    AWS CLI 包含存取 Session Manager 功能,適用於最終使用者。您可以使用啟動工作階段、檢視工作階段清單,以及永久結束工作階段 AWS CLI。

    注意

    若要使用 AWS CLI 執行工作階段命令,您必須使用 CLI (或更新版本) 的 1.16.12 版,而且必須在本機電腦上安裝Session Manager外掛程式。如需相關資訊,請參閱安裝Session Manager外掛程式 AWS CLI。若要檢視上的外掛程式GitHub,請參閱session-manager-plugin

  • IAM 存取控制

    透過使用 IAM 政策,您可以控制組織中哪些成員可以初始化受管節點到工作階段裡以及那些節點他們可以存取。您也可以提供對受管節點的臨時存取權。例如,您可能想要提供的現場值班工程師 (或一組值班工程師) 只在值班時存取其產品伺服器。

  • 記錄和稽核功能支援

    Session Manager AWS 帳戶 通過與許多其 AWS 服務他集成,為您提供審計和記錄會話歷史記錄的選項。如需詳細資訊,請參閱 稽核工作階段活動啟用和停用工作階段活動記錄

  • 可設定的 shell 描述檔

    Session Manager 提供在工作階段中設定偏好設定的選項。這些可自訂的描述檔可讓您定義偏好設定,例如 shell 偏好設定、環境變數、工作目錄,以及在工作階段啟動時執行的多個命令。

  • 客戶金鑰資料加密支援

    您可以設定Session Manager為加密傳送到 Amazon Simple Storage Service (Amazon S3) 儲存貯體的工作階段資料日誌,或串流至 CloudWatch 日誌日誌群組。您也可以將 Session Manager 設定為以進一步加密在工作階段期間用戶端機器與受管節點之間傳輸的資料。如需相關資訊,請參閱啟用和停用工作階段活動記錄進行工作階段偏好設定

  • AWS PrivateLink 支援沒有公用 IP 位址的受管節點

    您也可以為 Systems Manager 設定 VPC 端點,以進一步 AWS PrivateLink 保護您的工作階段。 AWS PrivateLink 將受管節點、系統管理員和 Amazon EC2 之間的所有網路流量限制到 Amazon 網路。如需詳細資訊,請參閱建立 VPC 端點

  • 通道

    在工作階段中,使用工作階段類型 AWS Systems Manager (SSM) 文件在用戶端機器上的本機連接埠與受管理節點上的遠端連接埠之間通道流量 (例如 http 或自訂通訊協定)。

  • 互動式命令

    建立 Session-type SSM 文件,使用工作階段來以互動方式執行單一命令,讓您具備管理使用者能在受管節點上進行何種作業的方式。

什麼是工作階段?

工作階段是使用 Session Manager 對受管節點進行的連線。工作階段是以用戶端 (您) 與遠端受管節點 (串流命令的輸入和輸出) 之間的安全雙向通訊通道為基礎。用戶端和受管節點之間的流量會使用 TLS 1.2 加密,並使用 SigV4 來簽署建立連線的請求。這種雙向通信允許交互式 bash 和 PowerShell 訪問託管節點。您也可以使用 AWS Key Management Service (AWS KMS) 金鑰進一步加密超出預設 TLS 加密的資料。

例如,假設 John 是一位在您的 IT 部門值班的工程師。他接收一個事件通知,需要他遠端連接到受管節點,例如需要故障排除的執行失敗或直接在節點上變更簡單的組態選項。使用 AWS Systems Manager 主控台、Amazon EC2 主控台或 John 啟動工作階段 AWS CLI,將其連接到受管節點,在完成任務所需的節點上執行命令,然後結束工作階段。

當 John 傳送第一個命令來開始工作階段時,Session Manager 服務會驗證他的 ID、驗證 IAM 政策給予他的許可全縣,檢查組態設定 (例如,驗證工作階段的許可限制) 和傳送訊息到 SSM Agent 以開啟雙向連線。在連線建立和 John 樹入下一個命令後、從 SSM Agent 上輸出並命令且傳到此通訊通道然後傳回他的本機電腦。