如何使用 Azure Key Vault 中的证书通过 Bastion 连接到 Azure 虚拟机?

问题描述 投票:0回答:2

我想要保护 Azure 虚拟机。目前,我有一个登录名和密码,用于通过 Putty 在 SSH 中进行连接。

我的想法是在 Azure Key Vault 中创建 RSA 证书(我设法做到了)并使用它通过 Bastion 连接到我的虚拟机。我使用证书而不是密码没有问题: enter image description here

但是,我首先需要将计算机配置为使用此证书而不是当前定义的密码。我认为它一定发生在重置密码选项卡中,但我找不到要在 SSH 公钥中放入的内容: enter image description here

我找不到从azure门户检索公钥的方法,我可以下载CER或PFX格式的证书,但我尝试使用OpenSSL从这些文件中获取公钥,但无论我做什么无效。

如何从 Azure Key Vault 中生成的证书或 .pfx 或 .cer 文件中获取 azure 所需的格式为“ssh-rsa AAAA...用户名@域名”的公钥?

azure ssl openssl
2个回答
1
投票

我尝试在我的环境中重现相同的结果,并得到如下结果

要重置 SSH 公钥,请检查以下解决方法:

enter image description here

尝试登录到您的终端或云bash,如下所示:

ssh username@host
sudo -i

enter image description here

默认情况下,ssh-keygen 将生成一个带有一个公钥和私钥的 RSA 密钥包

ssh-keygen -t rsa -b 2048
y

ssh-keygen
将生成公共/私有 RSA 密钥对 -> 接下来单击 Enter 如果您未指定任何目录,它将在
/root/ .ssh/id_rsa
下生成,我尝试使用默认的
click enter -> overwrite y -> Enter passphrase click Enter  -> Enter
,如下所示:

enter image description here

公钥将保存在/root/.ssh/id_rsa.pub中。 SSH key 命令在 root 用户的主目录下生成 public/private

cd /root/.ssh/
ls

现在,尝试将公钥添加到目标服务器

id_rsa     - private key
id_rsa.pub - public key

enter image description here

使用公钥并粘贴到虚拟机中并进行更新,如下所示:

enter image description here

当我尝试登录 SSH 时,它使用公钥登录,但没有成功获得密码身份验证,如下所示:

enter image description here

现在,我尝试通过 Bastion 连接虚拟机,它已成功连接,如下所示:

enter image description here

enter image description here


0
投票

我可以将 Linux 上生成的私钥导出到 Azure Key Vault 吗?我正在尝试使用 Bastion,并希望将私钥安全地存储在 Azure Key Vault 中。

© www.soinside.com 2019 - 2024. All rights reserved.