會話管理是阿里雲為您提供的免費的串連執行個體的工具,該工具雲端式助手和WebSocket等技術實現,支援一鍵免密碼、免跳板機串連到無公網執行個體。本文為您介紹會話管理的使用情境以及注意事項。
什麼是會話管理?
會話管理本身不收費,但如果需要儲存會話管理操作記錄,需開啟會話操作記錄投遞功能,這將產生資料存放區費用,開啟該功能的具體操作,請參見會話操作記錄投遞。
會話管理是阿里雲為您提供的免費的串連執行個體的工具,該工具主要特點如下:
免密串連執行個體:在串連執行個體時無需輸入執行個體密碼。
支援串連無公網執行個體:使用該工具,無需您準備跳板機即可串連到無公網的執行個體。
在使用會話管理串連執行個體時,命令會經由阿里雲的會話管理服務端轉寄到ECS執行個體。
多種用戶端形態:
阿里雲官網控制台:直接在瀏覽器上使用會話管理用戶端串連執行個體(免安裝)
本機命令列(安裝ali-instance-cli):在您的個人電腦上通過會話管理用戶端串連執行個體(需安裝ali-instance-cli)
登入使用者說明
通過會話管理串連執行個體時,Linux執行個體預設以ecs-assist-user
使用者登入,Windows執行個體預設以system
使用者登入,具體說明如下。
ecs-assist-user
:Linux系統的一個普通使用者,沒有系統級的許可權,只能執行被授權的操作,但可以通過使用sudo
命令臨時獲得root許可權執行操作。system
:Windows系統的一個本地系統賬戶,擁有系統最高許可權。
使用限制&前提條件
僅支援串連到運行中狀態的執行個體。
執行個體需安裝雲助手Agent:會話管理雲端式助手的功能實現,需要在執行個體中安裝雲助手Agent。
2017年12月01日之後使用官方公用鏡像建立的ECS執行個體,預設預裝了雲助手Agent。如果您的執行個體是2017年12月01日之前購買的或使用自行上傳的自訂鏡像建立的執行個體,若需要使用雲助手相關功能,需自行安裝雲助手Agent,具體操作,請參見安裝雲助手Agent。
使用前請確保網路連通:由於雲助手Agent會通過WebSocket協議與雲助手服務端通訊,需要確保執行個體與雲助手服務端的網路連通性,具體說明,請參見相關安全性群組設定。
更多功能&適用情境
通過連接埠轉寄訪問無公網服務
使用會話管理用戶端的連接埠轉寄功能,將執行個體的某個服務連接埠映射到您的本機,然後您可以直接通過訪問原生對應連接埠訪問在ECS上的服務。比如訪問內網部署的Web後端服務、通過SSH串連內網執行個體。具體操作,請參見通過會話管理CLI的連接埠轉寄訪問無公網執行個體。
向執行個體添加臨時SSH公開金鑰
在您使用SSH串連執行個體時,您可以使用會話管理向執行個體內添加有效時間60s的臨時公開金鑰,然後通過金鑰組的驗證方式串連到執行個體。具體操作,請參見通過會話管理CLI註冊臨時公開金鑰免密登入執行個體。
會話操作記錄投遞
如果您是多人使用情境,可以通過會話操作記錄投遞功能,查看某個人的操作記錄,便於您在後續進行Action Trail。開啟會話操作記錄投遞功能,請參見會話操作記錄投遞。
會話管理工作原理
如圖所示,在通過會話管理串連執行個體時,會話管理用戶端和ECS執行個體將分別與雲助手服務端建立WebSocket串連。一旦串連建立,您每次輸入的命令都會經過雲助手服務端轉寄至執行個體,由執行個體中的雲助手Agent代為執行。
圖中涉及的模組
細節說明
安全性
|
基本使用流程
在阿里雲控制台通過會話管理串連執行個體。(瀏覽器中使用)
您可以直接在瀏覽器登入阿里雲官網控制台,通過會話管理串連執行個體。具體串連操作,請參見直接在瀏覽器上使用會話管理用戶端串連執行個體(免安裝)。操作流程如圖所示:
在您的個人電腦上通過會話管理用戶端串連執行個體。(本機命令列中使用)
您可以在個人電腦上安裝ali-instance-cli,直接使用本機命令列,通過會話管理串連執行個體。
具體操作,請參見在您的個人電腦上通過會話管理用戶端串連執行個體(需安裝ali-instance-cli)。操作流程如圖所示:
相關許可權管理
如果RAM使用者需要通過會話管理串連執行個體,相關操作的許可權及說明如下:
操作(Action)列對應RAM權限原則中的操作(Action)。
操作(Action) | 說明 |
| 通過會話管理功能串連到ECS執行個體。(必須) |
| 查詢ECS執行個體是否安裝雲助手Agent,該許可權用於控制台在串連前進行校正。 |
| 查詢會話管理是否開啟,該許可權用於控制台在串連前進行校正。 |
| 開啟或關閉會話管理,如果當前阿里雲帳號已經開啟會話管理功能,無需分配該許可權。 |
權限原則樣本
樣本一:在控制台使用會話管理
樣本二:通過ali-instance-cli使用會話管理
相關安全性群組設定
通過會話管理串連ECS執行個體時,需要確保ECS中啟動並執行雲助手Agent與雲助手服務端的網路連通性,即在安全性群組出方向設定以下規則:
與SSH、RDP等串連方式不同,由於會話管理是由雲助手Agent主動與會話管理服務端建立WebSocket串連,因此僅需允許存取出方向的雲助手服務端的WebSocket連接埠。關於會話管理的原理,請參見會話管理工作原理。
如果使用普通安全性群組(包括預設安全性群組),預設情況下會允許存取所有的出方向流量,無需配置。
如果使用企業安全性群組,預設情況下會禁用所有出方向的流量,需要配置以下規則。更多企業安全性群組的說明,請參見普通安全性群組與企業級安全性群組。
添加安全性群組規則的具體操作,請參見添加安全性群組規則。
授權策略 | 優先順序 | 協議類型 | 連接埠範圍 | 授權對象 | 描述 |
允許 | 1 | 自訂TCP | 443 |
| 用於訪問雲助手服務端。 |
允許 | 1 | 自訂TCP | 443 |
| 訪問雲助手Agent安裝包所在伺服器,用於安裝或更新您的雲助手Agent。 |
允許 | 1 | 自訂UDP | 53 |
| 用於解析網域名稱。 |
此外,如果您計劃僅通過會話管理串連執行個體,為了增加ECS執行個體的安全性,您可以取消允許存取安全性群組入方向上的SSH連接埠(預設22)或者RDP連接埠(預設3389)的規則。
在自己的應用中整合會話管理遠程登入功能
通過會話管理遠端連線到雲端服務器或受管理的執行個體的完整代碼,請參考開源專案cloud-assistant-starter。本專案中AxtSession.tsx檔案包含了調用APIStartTerminalSession - 開始終端會話擷取WebSocketURL
並建立串連的範例程式碼,將這段代碼移植到您自己的公司專屬應用程式中,即可使用會話管理串連執行個體。