Oli*_*ock 14 ssh azure azure-vm-role
如果我使用PowerShell创建Azure Linux VM,我如何获得其新的ssh主机密钥,以便我可以在我的本地ssh/putty中安装它?优选地,该解决方案也是PowerShell代码.
可以使用Azure 门户的新 “运行命令”功能。
粘贴以下命令:
for f in /etc/ssh/ssh_host_*_key; do ssh-keygen -l -f "$f"; done
Run Code Online (Sandbox Code Playgroud)您将获得如下输出:
Enable succeeded:
[stdout]
256 SHA256:bKKCom8yh5gOuBNWaHHJ3rrnRXmCOAyPN/WximYEPAU /etc/ssh/ssh_host_ecdsa_key.pub (ECDSA)
256 SHA256:IYeDl+gseYk46Acg4g2mcXGvCr7Z8FqOd+pCJz/KLHg /etc/ssh/ssh_host_ed25519_key.pub (ED25519)
2048 SHA256:rA0lIXvHqFq7VHKQCqHwjsj28kw+tO0g/X4KnPpEjMk root@myazurevm (RSA)
[stderr]
Run Code Online (Sandbox Code Playgroud)
(密钥类型集会因您的 VM 映像而异)
该功能也可以通过 Azure CLI 使用,如上面的链接和@mwik 的回答所示。
另请查看我使用 SFTP 安全连接到 Microsoft Azure 服务的完整指南。
这是一个老问题,但是对于新手来说,如今可以通过使用Azure CLI中的运行命令来找到一种替代方法。PowerShell可能也有一个等效项,但我尚未对此进行调查。
az vm run-command invoke --name <your-vm-name> --command-id RunShellScript --scripts "cat /etc/ssh/ssh_host_ecdsa_key.pub"
Run Code Online (Sandbox Code Playgroud)
将输出一个json文档,您可以从中提取公钥。请注意,此过程非常慢(每个主机约30秒),但是您只需要运行一次即可。见这个主旨为如何更新与Ansible known_hosts文件的例子。
归档时间: |
|
查看次数: |
3374 次 |
最近记录: |