Answers:
首先,您需要以OpenSSH authorized_keys
文件的格式获取公共密钥。
在WinSCP 5.15中,可以在“高级站点设置”对话框的“ SSH”>“身份验证”页面上使用“ 显示公钥”:
或者,您可以使用PuTTYgen-这是PuTTY软件包的一部分,但WinSCP带有其自己的副本(在“ WinSCP登录”对话框上使用“ 工具”>“运行PuTTYgengen ” )。
启动PuTTYgen。
以.ppk
格式加载私钥。
将标有“用于粘贴到OpenSSHauthorized_keys文件的公共密钥”框的内容复制到剪贴板:
在获取authorized_keys
格式的公钥后,在配置Azure Linux计算机时(或在重置公钥时)将其粘贴到“ SSH公钥”框中:
@Rohit Chatterjee在评论中提供了正确答案:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout myPrivateKey.key -out myCert.pem
说明:
Azure门户在虚拟机置备过程中要求提供PEM / CER(尽管可以提供密码)。PuttyGen按照此答案的说明从PPK创建PEM,但门户不接受输出。如果我能解决这个问题,我会在这里发布答案... – Rohit Chatterjee 1月29日4:18 1投票
好的,我按照azure.microsoft.com/zh-cn/documentation/articles/…上的说明进行操作,并且它们起作用了。基本上,您运行“ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout myPrivateKey.key -out myCert.pem”。.pem需要通过Azure门户上载。(我之所以没有将其发布为答案,是因为我是在Mac上完成的,并且发帖人要求Windows解决方案。Google搜索表明存在Windows的OpenSSL发行版,但我没有尝试过。)– Rohit Chatterjee 1月29日在4:49
另外,我在上面的评论中生成的私钥myPrivateKey.key需要导入到PuttyGen中并转换为PPK。腻子将不使用.key文件。–罗希特·查特吉1月29日4:51