在阿里云上,无法直接为 ECS 服务器创建独立的“登录账号”(即不能像在操作系统中那样直接创建一个新用户并分配给他人登录)。这是出于安全考虑的设计:ECS 的远程登录通常基于系统层面的用户(如 root 或特定用户名)和密钥/密码认证。
但您可以通过以下几种合规且安全的方式实现“为他人配置登录权限”的需求:
✅ 推荐方案:使用 RAM 子账号 + SSH 密钥映射(最佳实践)
适用场景:多人协作管理同一台或多台 ECS,需审计操作、最小权限控制。
步骤:
-
创建 RAM 子账号
- 登录 RAM 控制台
- 创建子账号(如
operator-zhang),设置登录方式(建议仅开启 API 访问或配合 MFA) - 注意:RAM 子账号默认不能直接登录 ECS 系统,它用于管理云资源(如重启实例、查看日志等)。
-
将子账号与 ECS 系统用户关联(通过自定义脚本或工具)
- 在 ECS 内部创建一个系统用户(如
zhang-user):sudo adduser zhang-user sudo passwd zhang-user # 设置密码(可选) - 将 RAM 子账号的 SSH 公钥添加到该用户的
~/.ssh/authorized_keys中
(需先让子账号生成自己的 SSH 密钥对,或使用统一密钥管理工具)
- 在 ECS 内部创建一个系统用户(如
-
授予必要权限(可选)
- 通过
sudoers文件限制该用户可执行的命令(避免 root 权限):echo "zhang-user ALL=(ALL) NOPASSWD: /usr/bin/systemctl, /bin/cat /var/log/*" | sudo tee -a /etc/sudoers.d/zhang-user
- 通过
-
告知他人登录信息
- 提供:
- ECS 公网 IP / 内网 IP
- 系统用户名(如
zhang-user) - 对应的 SSH 私钥(或临时密码)
- 强调:不要共享 root 账号或主密钥
- 提供:
⚠️ 替代方案(不推荐长期用)
| 方案 | 说明 | 风险 |
|---|---|---|
| 共享 root 密码 | 直接在 ECS 修改 root 密码后告知他人 | ❌ 高风险:无操作审计、易误操作 |
| 临时开放密码登录 | 在 /etc/ssh/sshd_config 启用 PasswordAuthentication yes 并设强密码 |
⚠️ 仅限短期测试,需及时关闭 |
| 使用堡垒机(如云盾堡垒机) | 部署 JumpServer 等中间件,集中管理登录 | ✅ 安全可控,适合企业级需求 |
🔐 重要安全建议
- 优先使用 SSH 密钥认证,禁用密码登录(
PasswordAuthentication no) - 定期轮换密钥/密码
- 开启操作审计:ActionTrail 记录所有 RAM 操作
- 遵循最小权限原则:只授权必要的命令或资源
如您有具体场景(如:开发测试环境 / 客户交付 / 运维团队分工),我可提供更定制化的配置示例。
云小栈