我已经在很多地方寻找这些信息,而且很少见。
我有一个Azure Linux VM。我使用SSH访问它,并在部署期间为此提供了公共RSA密钥。
我现在需要通过SSH从另一台机器远程访问它。但我一直无法找到有关如何添加第二个公共RSA密钥的信息。我一直看到的信息是它只能用一把钥匙进入。 这是正确的,还是我可以使用ssh-copy-id从我想从中访问它的第二台远程计算机向它发送另一个公钥?
答案 0 :(得分:4)
虽然与将新的ssh密钥复制到服务器相关的各种答案可能有效,但由于以下原因(主要归结为我对Azure VM的无知方式),我正在避免使用该方法:
1)Azure VM似乎设置为允许 密码访问或密钥访问。根据我阅读的文档,我不清楚是否从一个更改为另一个消除了先前的设置等,所以我没有走这条路。
2)另一件事是,根据我的经验,关于管理密钥访问的文档并不清楚。阅读它,并通过论坛上的许多相关问题,我错误地认为Azure只允许向VM添加一个用户/ RSA密钥对。
通过反复试验,我最终发现门户网站所指的是"重置密码"和"更新" (对密码/密钥所做的更改)实际上并不仅仅是关于重置和更新。可以使用重置/更新过程来添加新用户/密钥对,而不会丢失现有对。基本上,Azure门户上的用户/密钥/密码管理系统经过深思熟虑,在其术语中含糊不清(甚至误导)。
因此,我原来问题的解决方案是简单地添加一个新的用户/密钥支付给"重置密码"接口
应该注意的是,如果服务器上的sshd_config将SSH限制为在特定组中使用,则需要通过命令终端将通过Portal新添加的用户添加到这些组中的至少一个。
答案 1 :(得分:2)
在第二台机器上,使用ssh-keygen生成密钥(通常默认情况下会在$ HOME / .ssh /下生成密钥) 获取id_rsa.pub并粘贴到您需要访问的Azure计算机的authorized_keys文件中的新行。
现在可以从两侧访问您的Azure虚拟机。您可以为所需的所有服务器执行此操作。
答案 2 :(得分:-1)
为您的远程计算机生成ssh密钥,并将公钥添加到服务器的/home/user/.ssh/authorized_keys文件中。它应该工作。 https://www.digitalocean.com/community/tutorials/how-to-configure-ssh-key-based-authentication-on-a-linux-server这可能有助于生成密钥。
它对我有用,之前我使用的是基于Azure云的ubuntu VM。