实例无默认密码,如忘记密码可重置。创建实例时如未设置登录名,则会使用默认登录名。
| 操作系统 | 默认登录名 | 说明 | 
| Linux | 
 | 对应Linux系统的超级管理员用户。 | 
| Windows | 
 | 对应Windows系统的超级管理员用户。 | 
root用户权限较高,直接使用存在安全风险。建议使用ecs-user,通过sudo获取临时root权限执行敏感操作。
一、密码管理
1.1 重置密码(不知道/忘记原密码)
在线重置密码无需重启,建议优先尝试在线重置密码。
在线重置密码(不重启)
- 进入ECS控制台-实例,选择地域与资源组,找到待操作实例。 
- 根据以下指引,进入重置实例密码功能对话框。 - 简捷版控制台 - 标准版控制台 - 单击重置密码。  - 单击操作列下的。  
- 在重置实例密码对话框,完成如下配置后单击确认修改等待密码重置完成。其余配置保持默认。 - 新密码/确认密码:输入实例新密码。请为实例设置强密码(包含大小写字母、数字、特殊字符)。 
- 重置密码的方式:在线重置密码。 重要- 如无法选择在线重置实例密码,请使用离线重置密码(需重启)。 
 - 若提示重置密码失败,请使用离线重置密码(需重启)。 
离线重置密码(需重启)
离线重置密码需要重启实例才能生效。重启可能会中断实例中的业务,请合理规划时间。
- 进入ECS控制台-实例,选择地域与资源组,找到待操作实例。 
- 根据以下指引,进入重置实例密码功能对话框。 - 简捷版控制台 - 标准版控制台 - 单击重置密码。  - 单击操作列下的。  
- 在重置实例密码对话框,完成如下配置后单击确认修改等待密码重置完成。 - 新密码/确认密码:输入新实例密码。请为实例设置强密码(包含大小写字母、数字、特殊字符)。 
- 重置密码的方式:离线重置密码。 
 
- 重启实例。 - 重置密码需要重启实例才能生效。可在业务低峰期重启,以免影响业务稳定性。 
- VNC登录成功,代表在操作系统中,密码已经成功重置。 - 如果VNC登录实例成功,但Workbench等工具登录失败,证明密码已经重置成功,可能是SSH配置存在问题,建议通过无法连接Linux实例的排查方法。 
1.2 修改密码(知道原密码)
建议优先从控制台在线重置密码。
在线重置密码
- 进入ECS控制台-实例,选择地域与资源组,找到待操作实例。 
- 根据不同的控制台页面,进入重置实例密码功能对话框。 - 简捷版控制台 - 标准版控制台 - 单击重置密码。  - 单击操作列下的。  
- 在重置实例密码对话框,完成如下配置后单击确认修改等待密码重置完成。其余配置保持默认。 - 新密码/确认密码:输入新实例密码。请为实例设置强密码(包含大小写字母、数字、特殊字符)。 
- 重置密码的方式:在线重置密码。 重要- 如无法选择在线重置实例密码,请登录实例手动修改密码。 
 - 若提示重置密码失败,请登录实例手动修改密码。 
登录实例手动修改密码
Windows实例
以Windows Server 2019操作系统为例:
- 右键  ,单击运行(R),输入 ,单击运行(R),输入- compmgmt.msc并按- Enter键。
- 在左侧导航栏,选择。 
- 右键需要修改密码的用户名称(如Administrator),单击设置密码。 
- 在为 Administrator 设置密码对话框中,单击继续,输入新密码并确认密码。 重要- 请设置强密码(包含大小写字母、数字、特殊字符)。 
- 单击确定后,系统会显示密码已设置的确认信息,代表密码修改成功。 
Linux实例
以Alibaba Cloud Linux 3操作系统为例:
- 运行以下命令: - 请将 - <username>替换为待修改密码的用户名。- sudo passwd <username>
- 输入新密码后按 - Enter键,再次输入新密码并按- Enter键。重要- 请设置强密码(包含大小写字母、数字、特殊字符)。 
- 修改成功后,系统输出类似以下信息: - passwd: all authentication tokens updated successfully.
二、密钥对管理
创建实例时,可直接绑定一个已在阿里云创建或导入的密钥对,用于登录。如果创建实例时未绑定密钥对,需为实例绑定密钥对。
密钥对是一种更安全的凭证,可以有效抵御暴力破解、字典攻击等。它包含两部分:公钥(存储在实例内)、私钥(由您个人保管)。登录实例时,必须提供私钥以完成身份验证。
Windows实例使用密钥对须在实例中开启SSH服务,且不支持控制台管理。
2.1 创建/导入
控制台
创建密钥对
- 进入ECS控制台-密钥对,在左上角选择地域与资源组。 - ECS实例仅支持绑定与其同地域的密钥对。 
- 单击创建密钥对,创建类型选择自动创建密钥对。 
- 单击确定。 - 密钥对创建成功后,浏览器自动下载私钥文件(密钥对名称.pem)到本地。 
导入密钥对
- 根据私钥查看对应公钥 - 本地为Linux/macOS- 使用 - ssh-keygen命令从一个现有的私钥文件中提取并显示其对应的公钥- <path_to_key_pair>为私钥文件的路径,例如 - /path_to_key_pair/my-key-pair.pem。- ssh-keygen -y -f <path_to_key_pair>- 返回公钥信息: - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABA****+GF9q7rhc6vYrExwT4WU4fsaRcVXGV2Mg9RHex21hl1au77GkmnIgukBZjywlQOT4GDdsJy2nBOdJPrCEBIPxxxxxxxxxx/fctNuKjcmMMOA8YUT+sJKn3l7rCLkesE+S5880yNdRjBiiUy40kyr7Y+fqGVdSOHGMXZQPpkBtojcxxxxxxxxxxx/htEqGa/Jq4fH7bR6CYQ2XgH/hCap29Mdi/G5Tx1nbUKuIHdMWOPvjxxxxxxxxxx+lHtTGiAIRG1riyNRVC47ZEVCxxxxxx- 本地为Windows系统- 完成以下操作,查看公钥信息: - 启动PuTTYgen。 
- 单击Load。 
- 选择 - .ppk或- .pem文件。- PuTTYgen会显示公钥信息。 
 
- 导入密钥对(公钥)- 进入ECS控制台-密钥对,在左上角选择地域。 - ECS实例仅支持绑定与其同地域的密钥对。 
- 单击创建密钥对,创建类型选择导入已有密钥对,并提供公钥内容。 
- 单击确定,完成导入。 
 
API
- 创建密钥对:CreateKeyPair。 
- 导入密钥对中的公钥:ImportKeyPair。 
2.2 绑定/换绑
控制台
仅Linux实例,支持在控制台绑定、解绑、换绑密钥对。
创建实例时绑定密钥对
可在通过自定义购买创建实例时,设置登录凭证为密钥对,然后选择已创建的密钥对。
绑定/换绑密钥对
- 在控制台绑定/换绑密钥对需要重启实例才能生效。重启可能会中断实例中的业务,请合理规划时间。 
- 每个实例在控制台最多绑定一个密钥对,如需绑定多个,请在实例内手动绑定。 
控制台绑定/换绑(需重启)
进入ECS控制台-实例,在左上角选择地域与资源组,找到对应ECS实例后,根据以下指引操作:
| 简捷版控制台 | 标准版控制台 | 
| 单击,选择已创建的密钥对后,单击确定。重启实例后生效。 
 | 单击操作列下的,选择已创建的密钥对后,单击确定。重启实例后生效。 
 | 
实例内手动绑定(无需重启)
- 生成密钥对- 不同的工具生成密钥对的步骤有所差别,本步骤以 - ssh-keygen工具为例。- 输入以下命令生成密钥对。 - ssh-keygen -t rsa -b 2048 -f id_rsa- 参数说明: - -t rsa:代表密钥类型为- rsa密钥对。
- -b 2048:代表密钥长度为2048位。
- -f id_rsa:代表生成密钥对的文件名以及保存位置。
 - 系统将提示你输入一个口令(passphrase)。这个口令用于保护你的私钥。设置口令是推荐的安全措施。如果不需要口令,直接按回车键继续。 - 命令执行成功后,当前目录下会生成两个文件: - id_rsa:你的私钥。
- id_rsa.pub:你的公钥。
 重要- 请妥善保存私钥,不要泄漏给他人。 
- 为实例绑定公钥- 在使用Workbench登录实例后,按以下步骤操作。 - 为root用户绑定公钥与为非root用户绑定公钥操作有所差异,根据实际情况选择对应操作。 - 设置root用户的公钥- 创建 - authorized_keys配置文件。- 如果 - /root/.ssh目录或- authorized_keys文件不存在,运行以下命令创建。- sudo mkdir /root/.ssh sudo touch /root/.ssh/authorized_keys
- 添加公钥。 - 使用文本编辑器(如 Vim)打开 - authorized_keys文件。- sudo vim /root/.ssh/authorized_keys- 将你的公钥内容粘贴到文件中。可配置多个公钥,每个公钥占一行。配置完成后保存并关闭文件。 
- 设置文件权限。 - SSH 要求严格的权限设置,错误的权限会导致 SSH 登录失败。 - 运行以下命令,设置正确的权限。 - sudo chmod 700 /root/.ssh sudo chmod 600 /root/.ssh/authorized_keys
 - 设置非root用户的公钥- 创建 - authorized_keys配置文件。- 如果 - /root/.ssh目录或- authorized_keys文件不存在,运行以下命令创建。- 命令中 - <username>为待绑定公钥用户的用户名。- sudo mkdir /home/<username>/.ssh sudo touch /home/<username>/.ssh/authorized_keys
- 添加公钥。 - 使用文本编辑器(如 Vim)打开 - authorized_keys文件。- sudo vim /home/<username>/.ssh/authorized_keys- 将你的公钥内容粘贴到文件中。可配置多个公钥,每个公钥占一行。配置完成后保存并关闭文件。 
- 设置文件权限。 - SSH 要求严格的权限设置,错误的权限会导致 SSH 登录失败。 - 运行以下命令,设置正确的权限。 - sudo chown -R <username>:<username> /home/<username>/.ssh sudo chmod 700 /home/<username>/.ssh sudo chmod 600 /home/<username>/.ssh/authorized_keys
 
- 开启SSH服务的公钥认证功能- 配置公钥后,必须在服务器上启用 SSH 公钥认证。否则,密钥登录会失败。 - 备份SSH配置文件 - /etc/ssh/sshd_config。- sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
 - 使用文本编辑器(如 Vim)打开 - /etc/ssh/sshd_config文件,并找到- PubkeyAuthentication参数,设置为- yes,代表开启公钥认证功能。- sudo vim /etc/ssh/sshd_config
- 重启SSH服务以应用更改。 - 以Alibaba Cloud Linux 3为例: - sudo systemctl restart sshd- 部分操作系统(Ubuntu/Debian)的SSH服务名为 - ssh而非- sshd,请根据实际情况调整。重要- 如果正通过SSH的方式连接到实例,重启服务可能导致连接中断,服务重启完成后,即可重新连接。 
 
API
仅Linux实例支持通过API绑定/换绑/解绑密钥对。
- 创建实例时设置密钥对:在调用RunInstances创建实例时,将 - KeyPairName设置为对应的密钥对名称。
- 绑定/换绑密钥对:调用AttachKeyPair,并指定密钥对名称 - KeyPairName和实例ID- InstanceIds。
- 解绑密钥对:调用DetachKeyPair,并指定密钥对名称 - KeyPairName和实例ID- InstanceIds。
2.3 解绑
在控制台解绑密钥对需要重启实例才能生效。重启可能会中断实例中的业务,请合理规划时间。
控制台解绑(需重启)
进入ECS控制台-实例,在左上角选择地域与资源组,找到对应ECS实例后,根据以下指引操作:
| 简捷版控制台 | 标准版控制台 | 
| 在全部操作,单击绑定密钥对,单击解绑。重启实例后生效。 
 | 单击操作列下的,单击解绑。重启实例后生效。 
 | 
实例内手动解绑(无需重启)
可在实例内手动清除authorized_keys中存储的公钥,实现解绑密钥对。区分与不用用户,authorized_keys配置文件路径如下:
- root用户: - /root/.ssh/authorized_keys
- 非root用户: - /home/<username>/.ssh/authorized_keys- 其中 - <username>为待绑定公钥用户的用户名
2.4 删除
控制台
已绑定实例的密钥对不支持删除。
- 进入ECS控制台-密钥对,在左上角选择地域与资源组。 
- 找到需要删除的密钥对,单击操作列下的删除。完成密钥对的删除。 
API
调用DeleteKeyPairs,并指定KeyPairNames为要删除的密钥对名称列表。
三、多用户远程登录
在需要设置多个用户使用ECS实例时,请遵循以下步骤,创建普通用户并启用远程访问。
Linux系统
使用Workbench登录实例,按以下步骤创建用户:
- 创建用户- 命令中<username>需替换为要创建用户的用户名。例如创建名为 - exampleuser的用户时,可执行- sudo useradd -m exampleuser。- sudo useradd -m <username>
- 设置密码/密钥对- 绑定密钥对- 在本机生成密钥对文件。 重要- 安全起见,请不要在实例中通过ssh-keygen创建密钥对,请不要将生成的私钥保存在需要连接的ECS实例中。 - 不同的工具生成密钥对的步骤有所差别,本步骤以 - ssh-keygen工具为例。- 输入以下命令生成密钥对。 - ssh-keygen -t rsa -b 2048 -f id_rsa- 参数说明: - -t rsa:代表密钥类型为- rsa密钥对。
- -b 2048:代表密钥长度为2048位。
- -f id_rsa:代表生成密钥对的文件名以及保存位置。
 - 系统将提示你输入一个口令(passphrase)。这个口令用于保护你的私钥。设置口令是推荐的安全措施。如果不需要口令,直接按回车键继续。 - 命令执行成功后,当前目录下会生成两个文件: - id_rsa:你的私钥。
- id_rsa.pub:你的公钥。
 重要- 请妥善保存私钥,不要泄漏给他人。 
- 为用户绑定公钥。 - 创建 - authorized_keys配置文件。- 如果 - /root/.ssh目录或- authorized_keys文件不存在,运行以下命令创建。- 命令中 - <username>为待绑定公钥用户的用户名。- sudo mkdir /home/<username>/.ssh sudo touch /home/<username>/.ssh/authorized_keys
- 添加公钥。 - 使用文本编辑器(如 Vim)打开 - authorized_keys文件。- sudo vim /home/<username>/.ssh/authorized_keys- 将你的公钥内容粘贴到文件中。可配置多个公钥,每个公钥占一行。配置完成后保存并关闭文件。 
- 设置文件权限。 - SSH 要求严格的权限设置,错误的权限会导致 SSH 登录失败。 - 运行以下命令,设置正确的权限。 - sudo chown -R <username>:<username> /home/<username>/.ssh sudo chmod 700 /home/<username>/.ssh sudo chmod 600 /home/<username>/.ssh/authorized_keys
 
- 开启SSH服务的公钥认证功能。 - 配置公钥后,必须在服务器上启用 SSH 公钥认证。否则,密钥登录会失败。 - 备份SSH配置文件 - /etc/ssh/sshd_config。- sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
 - 使用文本编辑器(如 Vim)打开 - /etc/ssh/sshd_config文件,并找到- PubkeyAuthentication参数,设置为- yes,代表开启公钥认证功能。- sudo vim /etc/ssh/sshd_config
- 重启SSH服务以应用更改。 - 以Alibaba Cloud Linux 3为例: - sudo systemctl restart sshd- 部分操作系统(Ubuntu/Debian)的SSH服务名为 - ssh而非- sshd,请根据实际情况调整。重要- 如果正通过SSH的方式连接到实例,重启服务可能导致连接中断,服务重启完成后,即可重新连接。 
 
 - 设置密码- 运行以下命令: - 请将 - <username>替换为待修改密码的用户名。- sudo passwd <username>- 输入新密码后按 - Enter键,再次输入新密码并按- Enter键。- 修改成功后,系统输出类似以下信息: - passwd: all authentication tokens updated successfully.
- (验证)使用新创建的用户远程登录到ECS实例。
Windows系统
默认情况下,Windows系统仅支持两个不同的用户同时通过RDP远程连接实例,如需两个以上用户同时登录Windows实例,需要使用微软的远程桌面服务(Remote Desktop Services)的能力。
使用Workbench登录实例,按以下步骤操作:
- 创建用户- 打开控制面板,找到用户账户,单击下面的更改账户类型。 
  - 在管理账户页面,单击添加用户账户,进入添加用户页面。 
  - 在添加用户页面,根据界面提示,设置新用户的用户名及密码。 - 本示例以创建exampleuser为例,请根据需求设置用户名。 
- 单击下一步,然后单击完成。完成新用户的创建。 
  
- 将新用户添加到- Remote Desktop Users用户组- 只有Remote Desktop Users用户组下的用户,才能以远程登录的方式登录实例。 - 在任务栏的搜索框搜索计算机管理,单击搜索到的计算机管理进入计算机管理页面。 
  - 在下,找到Remote Desktop Users用户组。双击进入Remote Desktop Users属性页面。 
  - 操作流程如图所示。 - 在Remote Desktop Users属性页面,单击添加。 
- 输入步骤2中创建用户的用户名,单击检查名称,之后输入框会自动根据输入的用户名补全用户的名称全称。 
- 单击确定。在Remote Desktop Users属性页面依次单击应用、确定。完成将用户添加到用户组的操作。 
 
  
- (验证)使用新创建的用户远程登录到ECS实例。
四、常见问题
Q1:ECS默认用户名、初始用户名、默认登录名、初始登录名是什么?
- Linux系统实例:默认为 - root,若创建实例时设置了使用ecs-user则为ecs-user。
- Windows系统实例:默认为 - Administrator。
Q2:ECS默认密码、初始密码、默认远程密码、初始登录密码是什么?
没有。
出于安全考虑,阿里云不会为ECS实例设置默认或初始密码。如在创建实例时未设置密码。重置密码(不知道/忘记原密码)。
Q3:如何查看实例密码?
阿里云不会保存您设置的实例密码,因此不支持查看。
Q4:凭证找回(忘记登录名、忘记密码)
忘记登录名:可通过控制重置密码功能查看。创建实例时设置的登录名会在重置实例密码对话框的最上方显示。
忘记密码:重置密码(不知道/忘记原密码)。
Q5:在线重置密码失败的原因?
大多数情况下,是由于实例中的安全软件拦截云助手修改密码指令造成的。建议使用离线重置密码。
Q6:「root」和「ecs-user」切换
- 原来使用root,切换到ecs-user - 仅通过自定义购买创建部分Linux镜像的实例时,支持设置 - ecs-user。- 实例创建后,不支持直接切换到 - ecs-user,但可通过添加多用户远程登录的方式自行创建- ecs-user后,并为该用户授予- sudo权限,达到切换的效果。
- 原来使用ecs-user,切换到root - 强烈建议继续使用 - ecs-user并通过- sudo执行需要特权的命令,而不是直接使用- root用户登录。- 如果确实需要在已登录的会话中切换到 - root用户,可通过ecs-user登录实例后,执行- sudo su命令,切换到- root用户。
控制台的离线重置密码、绑定密钥对等功能仅对创建实例时设置的登录名生效。
Q7:如何让Linux实例同时支持「SSH 密钥对」和「密码」两种登录方式?
可通过修改 SSH 服务的/etc/ssh/sshd_config配置文件 实现。
- 开启SSH密钥对认证(推荐、更安全):由 - PubkeyAuthentication选项控制,设为- yes代表开启密钥对认证。修改配置后需重启实例的SSH服务。
- 开启SSH密码认证(不推荐、安全系数低):由 - PasswordAuthentication选项控制,设为- yes代表开启密码认证。修改配置后需重启实例的SSH服务。
 > 重置实例密码
 > 重置实例密码


