您可以在控制台直接通过会话管理一键连接到ECS实例,支持免密连接无公网实例。相比于传统的SSH或RDP直连的方式更加安全方便。本文为您介绍如何在阿里云控制台通过会话管理连接实例。
重要 在通过会话管理连接实例时,不论实例是Windows系统还是Linux系统,都仅支持命令行界面。
如果您需要使用图形化界面以会话管理的方式连接Windows实例,可以通过端口转发功能,将Windows的远程访问端口映射到本机,通过RDP工具进行连接,具体操作,请参见通过会话管理CLI的端口转发访问无公网实例。
前提条件
待连接实例状态为运行中
实例运行状态可以在ECS控制台中的实例模块查看,运行中的实例如图所示:
查看实例状态的操作说明,请参见查看实例信息。
实例需安装云助手Agent
会话管理基于云助手的功能实现,需要在实例中安装云助手Agent。云助手Agent状态可以在ECS控制台的云助手模块查看,已经安装云助手的实例如图所示:
2017年12月01日之后使用官方公共镜像创建的ECS实例,默认预装了云助手Agent。如果您的实例是2017年12月01日之前购买的或使用自行上传的自定义镜像创建的实例,需自行安装云助手Agent,请参见安装云助手Agent。
查看云助手Agent状态以及处理异常状态的具体操作,请参见查看云助手状态及异常状态处理。
确保网络连通(设置安全组)
通过会话管理连接ECS实例时,需要确保ECS中运行的云助手Agent与云助手服务端的网络连通性,即在安全组出方向设置以下规则:
与SSH、RDP等连接方式不同,由于会话管理是由云助手Agent主动与会话管理服务端建立WebSocket连接,因此仅需放行出方向的云助手服务端的WebSocket端口。关于会话管理的原理,请参见会话管理工作原理。
添加安全组规则的具体操作,请参见添加安全组规则。
授权策略 | 优先级 | 协议类型 | 端口范围 | 授权对象 | 描述 |
允许 | 1 | 自定义TCP | 443 | 100.100.0.0/16
| 用于访问云助手服务端。 |
允许 | 1 | 自定义TCP | 443 | 100.0.0.0/8
| 访问云助手Agent安装包所在服务器,用于安装或更新您的云助手Agent。 |
允许 | 1 | 自定义UDP | 53 | 0.0.0.0/0
| 用于解析域名。 |
此外,如果您计划仅通过会话管理连接实例,为了增加ECS实例的安全性,您可以取消放行安全组入方向上的SSH端口(默认22)或者RDP端口(默认3389)的规则。
RAM用户使用该功能需拥有相关权限
如果RAM用户需要在控制台使用会话管理连接实例,根据最小授权原则,需要具有以下权限。
ecs:StartTerminalSession
:通过会话管理连接实例的权限,此外,可以通过Resource
字段,限制RAM用户可连接(会话管理)的ECS实例。
ecs:DescribeCloudAssistantStatus
:查询ECS实例是否需要安装云助手,该权限用于控制台在连接前进行校验。
ecs:DescribeUserBusinessBehavior
:查询会话管理功能是否已经开启,该权限用于控制台在连接前进行校验。
ecs:ModifyCloudAssistantSettings
(可选):打开或关闭会话管理的权限,如果当前阿里云账号已经开通会话管理,无需分配该权限。
自定义权限策略示例如下:
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "ecs:StartTerminalSession",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ecs:DescribeUserBusinessBehavior",
"ecs:DescribeCloudAssistantStatus",
"ecs:ModifyCloudAssistantSettings"
],
"Resource": "*"
}
]
}
为RAM用户授权,请参见为RAM用户授权。
操作步骤
登录ECS管理控制台。 在左侧导航栏,选择。 在页面左侧顶部,选择目标资源所在的资源组和地域。 在实例页面,找到待连接的实例,单击对应操作列的远程连接。
| |
单击展开其他登录方式,找到通过会话管理远程连接,确保会话管理已开启(全地域),如果显示会话管理已关闭,请先打开功能开关。
重要 打开会话管理功能开关前,请确保RAM用户具有查看会话管理配置的DescribeUserBusinessBehavior 权限和打开或关闭会话管理功能的ModifyUserBusinessBehavior 权限,详细的权限策略示例,请参见前提条件。
| |
单击免密登录。 连接成功后,Linux实例默认以ecs-assist-user用户登录实例,Windows实例默认以system用户登录。以Linux实例为例,效果如图所示。
| |