允许使用公钥/私钥身份验证对 ESXi/ESX 主机进行 SSH 访问
search cancel

允许使用公钥/私钥身份验证对 ESXi/ESX 主机进行 SSH 访问

book

Article ID: 301446

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

Symptoms:

免责声明:本文为 Allowing SSH access to ESXi/ESX hosts with public/private key authentication (1002866) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。



本文提供了允许使用公钥/私钥身份验证(而非使用用户名/密码身份验证)对 ESXi/ESX 主机进行 SSH 访问的步骤。


Environment

VMware ESX Server 3.0.x
VMware vSphere ESXi 5.0
VMware ESX 4.1.x
VMware ESX Server 3.5.x
VMware vSphere ESXi 6.0
VMware ESX 4.0.x
VMware vSphere ESXi 5.5
VMware vSphere ESXi 6.5
VMware vSphere ESXi 5.1

Resolution

要允许使用公钥/私钥身份验证对 ESXi/ESX 主机进行 SSH 访问,请执行以下操作:

  1. 生成公钥/私钥。有关详细说明,请参见 OpenBSD 中的《OpenBSD 参考手册》

    注意
    • 这些说明生成两个 ~/.ssh 文件:id_rsa id_rsa.pub
    • 在 ESXi 5.x 中,ssh-keygen 命令位于 /usr/lib/vmware/openssh/bin 下。
    • 上述链接有效时间截止到 2016 年 6 月 22 日。如果您发现链接已损坏,请提供有关此文章的反馈,VMware 员工会在必要时更新这些文章。

  2. 在远程主机上,在 ~/.ssh/authorized_keys 中存储公钥内容 id_rsa.pub

    注意
    • 对于 ESXi 5.x、6.0 和 6.5,authorized_keys 的位置为:/etc/ssh/keys-<username>/authorized_keys
    • 可以在此文件中存储多个密钥。

  3. 要允许授予 root 访问权限,请在 /etc/ssh/sshd_config 文件中将 PermitRootLogin no 更改为 PermitRootLogin yes
  4. 要禁用密码登录,请务必将 ChallengeResponseAuthentication PasswordAuthentication 设置为 no
  5. 重新加载服务:

    • 对于 ESXi,请运行以下命令:

      /etc/init.d/SSH restart

    • 对于 ESX,请运行以下命令:

      service sshd reload
有关备选解决方案以及 SSH 的详细信息,请参见 VMware vSphere 5.5 documentation Center 中的“将 SSH 密钥上载到 ESXi 主机”


Additional Information

Allowing SSH access to ESXi/ESX hosts with public/private key authentication