你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Azure CLI 生成并存储 SSH 密钥

适用于:✔️ Linux VM ✔️ Windows VM ✔️ 灵活规模集 ✔️ 统一规模集

可以在创建 VM 之前创建 SSH 密钥,并将这些密钥存储在 Azure 中。 每个新创建的 SSH 密钥也存储在本地。

如果有现有的 SSH 密钥,则可以将其上传并存储在 Azure 中以供重复使用。

有关详细信息,请参阅详细步骤:创建和管理用于 Azure 中 Linux VM 的身份验证的 SSH 密钥

有关如何在 Linux VM 中创建和使用 SSH 密钥的详细信息,请参阅使用 SSH 密钥连接到 Linux VM

生成新密钥

  1. 在登录后,使用 az sshkey create 命令创建新的 SSH 密钥:

    az sshkey create --name "mySSHKey" --resource-group "myResourceGroup"
    

    注意

    此命令默认为 RSA 密钥类型。为了生成 ED25519 密钥,你可以传入可选标志 --encryption-type Ed25519

  2. 生成的输出列出了新密钥文件的路径:

    Private key is saved to "/home/user/.ssh/7777777777_9999999".
    Public key is saved to "/home/user/.ssh/7777777777_9999999.pub".
    
  3. 更改私钥文件的权限以保护隐私:

    chmod 600 /home/user/.ssh/7777777777_9999999
    

连接到 VM

在本地计算机上,打开 Bash 提示符:

ssh -identity_file <path to the private key file> username@<ipaddress of the VM>

例如,输入 ssh -i /home/user/.ssh/mySSHKey azureuser@123.45.67.890

上传 SSH 密钥

可以上传公共 SSH 密钥以存储在 Azure 中。

使用 az sshkey create 命令通过指定 SSH 公钥的文件上传 SSH 公钥:

az sshkey create --name "mySSHKey" --public-key "@/home/user/.ssh/7777777777_9999999.pub" --resource-group "myResourceGroup"

列出密钥

使用 az sshkey list 命令列出所有公共 SSH 密钥,可选择指定资源组:

az sshkey list --resource-group "myResourceGroup"

获取公钥

使用 az sshkey show 命令显示公共 SSH 密钥的值:

az sshkey show --name "mySSHKey" --resource-group "myResourceGroup"

后续步骤

若要详细了解如何在 Azure VM 中使用 SSH 密钥,请参阅使用 SSH 密钥连接到 Linux VM