本文介绍您在使用密码或密钥时的相关问题。
- 通过私钥方式登录云服务器ECS,仍然提示需要输入密码?
- 通过SSH方式运维登录堡垒机时,能否使用密钥作为认证方式?
- 运维人员如何修改堡垒机用户密码?
- 密码有效期到期后,是否影响用户公钥的方式登录?
- 如何生成密钥并设置密钥认证?
通过私钥方式登录云服务器ECS,仍然提示需要输入密码?
您可以通过以下方式进行排查:
- 确认您所添加的私钥类型。目前堡垒机实例仅支持通过ssh-keygen工具生成的RSA私钥(不支持带密码的私钥)登录ECS服务器。
- 确认所添加的授权组凭据是否正确。您可以通过使用私钥登录ECS云服务器的方式进行验证。说明 堡垒机版本不同,使用私钥登录ECS云服务器的方法也不同。请您根据堡垒机的版本,查看对应文档。
- V3.1版本,请参见为帐户设置SSH私钥。
- V3.2版本,请参见设置SSH私钥认证。
- 检查OpenSSH是否升级至9.0及以上版本,或操作系统为Rocky、Ubuntu 22.04、Mac 13.0及以上版本等。由于OpenSSH 9.0版本禁用了ssh-rsa公钥签名算法,您可以在ssh_config文件中配置手动启用客户端、服务器ssh-rsa公钥签名算法的参数。
- 在您的服务器执行以下命令,打开ssh_config配置文件。
vim /etc/ssh/ssh_config
- 添加如下配置内容。
HostKeyAlgorithms +ssh-rsa PubkeyAcceptedAlgorithms +ssh-rsa
- 在您的服务器执行以下命令,打开ssh_config配置文件。
通过SSH方式运维登录堡垒机时,能否使用密钥作为认证方式?
运维人员如何修改堡垒机用户密码?
您可以通过以下方式修改堡垒机用户密码:
- 联系堡垒机实例管理员进行修改。
- 登录堡垒机实例后,自行修改您的登录密码。具体操作,请参见运维员安全策略。
密码有效期到期后,是否影响用户公钥的方式登录?
密钥认证不受影响。
如何生成密钥并设置密钥认证?
堡垒机支持RSA格式密钥和Ed25519格式密钥。下面以root账号为例,为您介绍如何生成RSA格式的密钥。
- 在ECS资产,使用以下命令切换到.ssh目录下。
cd ~/.ssh/
- 在.ssh目录下,执行如下命令,生成RSA密钥。
ssh-keygen -t RSA -m PEM
执行完成后,在当前目录会生成RSA密钥对,即私钥id_rsa和公钥id_rsa.pub。
- 将私钥id_rsa内容复制到堡垒机主机账户。具体操作,请参见配置主机账户。
- 执行如下命令,将公钥id_rsa.pub拷贝至authorized_keys目录中。
cp id_rsa.pub authorized_keys
说明
- CreateHostAccount接口传参时,密钥需使用base64编码。
- 如果主机账户同时设置了密码和密钥,密钥优先级最高。当密钥错误时,会切换到密码验证。
堡垒机支持公网私用的服务器吗?
支持,如果您的网络环境已经部署公网私用,可以在堡垒机控制台进行设置。具体操作,请参见配置公网私用。