本文介绍您在使用密码或密钥时的相关问题。

通过私钥方式登录云服务器ECS,仍然提示需要输入密码?

您可以通过以下方式进行排查:
  1. 确认您所添加的私钥类型。目前堡垒机实例仅支持通过ssh-keygen工具生成的RSA私钥(不支持带密码的私钥)登录ECS服务器。
  2. 确认所添加的授权组凭据是否正确。您可以通过使用私钥登录ECS云服务器的方式进行验证。
    说明 堡垒机版本不同,使用私钥登录ECS云服务器的方法也不同。请您根据堡垒机的版本,查看对应文档。
  3. 检查OpenSSH是否升级至9.0及以上版本,或操作系统为Rocky、Ubuntu 22.04、Mac 13.0及以上版本等。
    由于OpenSSH 9.0版本禁用了ssh-rsa公钥签名算法,您可以在ssh_config文件中配置手动启用客户端、服务器ssh-rsa公钥签名算法的参数。
    1. 在您的服务器执行以下命令,打开ssh_config配置文件。
      vim /etc/ssh/ssh_config
    2. 添加如下配置内容。
      HostKeyAlgorithms +ssh-rsa
      PubkeyAcceptedAlgorithms +ssh-rsa

通过SSH方式运维登录堡垒机时,能否使用密钥作为认证方式?

可以。当使用SSH方式登录堡垒机60022端口时,您可以使用密钥或密码作为认证方式。

运维人员如何修改堡垒机用户密码?

您可以通过以下方式修改堡垒机用户密码:
  • 联系堡垒机实例管理员进行修改。
  • 登录堡垒机实例后,自行修改您的登录密码。具体操作,请参见运维员安全策略

密码有效期到期后,是否影响用户公钥的方式登录?

密钥认证不受影响。

如何生成密钥并设置密钥认证?

堡垒机支持RSA格式密钥和Ed25519格式密钥。下面以root账号为例,为您介绍如何生成RSA格式的密钥。
  1. 在ECS资产,使用以下命令切换到.ssh目录下。
    cd ~/.ssh/
  2. .ssh目录下,执行如下命令,生成RSA密钥。
    ssh-keygen -t RSA -m PEM

    执行完成后,在当前目录会生成RSA密钥对,即私钥id_rsa和公钥id_rsa.pub。

  3. 将私钥id_rsa内容复制到堡垒机主机账户。具体操作,请参见配置主机账户
  4. 执行如下命令,将公钥id_rsa.pub拷贝至authorized_keys目录中。
    cp id_rsa.pub authorized_keys
说明
  • CreateHostAccount接口传参时,密钥需使用base64编码。
  • 如果主机账户同时设置了密码和密钥,密钥优先级最高。当密钥错误时,会切换到密码验证。

堡垒机支持公网私用的服务器吗?

支持,如果您的网络环境已经部署公网私用,可以在堡垒机控制台进行设置。具体操作,请参见配置公网私用