會話管理是云助手提供的功能,用于便捷安全地遠程連接ECS實例。本文介紹如何通過會話管理CLI連接ECS實例。
前提條件
需要連接的目標實例中已安裝云助手Agent,并且Windows客戶端版本大于等于2.1.3.256、Linux客戶端版本大于等于2.2.3.256。具體操作,請參見安裝云助手Agent。
已開啟會話管理功能,具體操作,請參見通過會話管理連接實例。
背景信息
使用會話管理CLI遠程連接目標ECS實例時,無需暴露實例公網IP與端口,只需獲取阿里云ECS實例ID與密碼,即可通過會話管理客戶端連接目標實例。相比SSH、VNC等方式,可以更便捷地遠程連接ECS實例,且兼具安全性。關于會話管理的更多信息,請參見會話管理概述。
Linux、macOS操作系統
本文操作以test用戶為例,具體操作以您實際操作的用戶和用戶目錄為準。
登錄會話管理客戶端。
在會話管理客戶端安裝ali-instance-cli。
不同操作系統的客戶端安裝方式不同,具體說明如下:
Linux
curl -O https://aliyun-client-assist.oss-accelerate.aliyuncs.com/session-manager/linux/ali-instance-cli chmod a+x ali-instance-cli
macOS:
curl -O https://aliyun-client-assist.oss-accelerate.aliyuncs.com/session-manager/mac/ali-instance-cli chmod a+x ali-instance-cli
配置AccessKey、STS Token或CredentialsURI。
關于如何獲取AccessKey或STS Token,請參見創建AccessKey和什么是STS。
切換到test目錄。
cd /home/test
配置鑒權認證方式。
支持以下三種配置方式:
AccessKey配置方式
執行如下命令,根據界面提示,輸入AccessKey ID、AccessKey Secret、RegionID。
./ali-instance-cli configure --mode AK
STS Token配置方式
說明region、ak、sk、token要修改為實際的Region ID、AccessKey ID、AccessKey Secret和STS Token。
./ali-instance-cli configure set --mode StsToken --region "region" --access-key-id "ak" --access-key-secret "sk" --sts-token "token"
CredentialsURI配置方式
執行如下命令,根據界面提示,輸入CredentialsURI和RegionID。
說明CredentialsURI為您配置的認證服務器的地址。
./ali-instance-cli configure --mode=CredentialsURI
當回顯出現如圖所示內容時,說明鑒權方式已配置完成。
執行如下命令,連接目標實例。
./ali-instance-cli session --instance instance-id
說明instance id請替換成目標實例ID。
當回顯如下圖所示時,說明已經通過Session Manager方式連接到目標實例。
Windows操作系統
使用會話管理客戶端的Windows操作系統已安裝OpenSSH。具體操作,請參見使用云助手在Windows實例中安裝OpenSSH程序。
本文操作以test用戶為例,具體操作以您實際操作的用戶和用戶目錄為準。
登錄會話管理客戶端。
具體操作,請參見連接方式概述。
在會話管理客戶端下載ali-instance-cli。
下載Windows版ali-instance-cli并保存到本地文件夾中,如
C:\Users\test
。配置AccessKey或STS Token。
關于如何獲取AccessKey或STS Token,請參見創建AccessKey和什么是STS。
選擇
,輸入cmd,按Enter
鍵,打開命令提示符窗口。切換到test目錄。
cd C:\Users\test
配置鑒權認證方式。
支持以下三種配置方式:
AccessKey配置方式
執行如下命令,根據界面提示,輸入AccessKey ID、AccessKey Secret、RegionID。
ali-instance-cli.exe configure --mode AK
STS Token配置方式
說明region、ak、sk、token要修改為實際的Region ID、AccessKey ID、AccessKey Secret和STS Token。
ali-instance-cli.exe configure set --mode StsToken --region "region" --access-key-id "ak" --access-key-secret "sk" --sts-token "token"
CredentialsURI配置方式
執行如下命令,根據界面提示,輸入CredentialsURI和RegionID。
ali-instance-cli.exe configure --mode=CredentialsURI
當回顯出現如圖所示內容時,說明鑒權方式已配置完成。
執行如下命令,連接目標實例。
.\ali-instance-cli.exe session --instance instance-id
說明instance id請替換成目標實例ID。
當回顯如下圖所示時,說明已經通過Session Manager方式連接到目標實例。
常見問題
當使用會話管理客戶端出現問題時,您可以通過查看log分析具體問題。
查看會話管理客戶端的日志:當前log目錄,如
/home/test/log/aliyun_ecs_session_log.2022XXXX
。查看云助手Agent日志:
Linux
/usr/local/share/aliyun-assist/云助手版本號/log/
Windows
C:\ProgramData\aliyun\assist\云助手版本號\log
會話管理功能未開啟
若會話管理功能未開啟,使用會話管理客戶端連接遠程實例,會出現ssh_exchange_identification: Connection closed by remote host
的錯誤提示。并且,會話管理客戶端的日志里面會出現session manager is disabled, please enable first
。請通過控制臺開啟會話管理功能,具體操作,請參見通過會話管理連接實例。
會話管理自動斷開
使用會話管理連接到目標實例后,如果長時間沒有任何操作連接會自動斷開。默認的連接空閑時間為3分鐘,您可以通過--idle-timeout
參數自定義最大空閑時間。例如執行以下命令連接到目標實例后,連接空閑達到10分鐘就會自動斷開。
此功能需確保ali-instance-cli不低于以下版本:
Linux:1.2.0.48
Windows:1.1.0.48
macOS:1.3.0.48
./ali-instance-cli session --instance instance-id --idle-timeout 600