如何将公钥复制到不允许密码的服务器?

如何将公钥复制到不允许密码的服务器?

我将我的服务器配置为不允许密码身份验证。现在我在远程位置有一台新机器,如果服务器不允许密码身份验证,我如何生成 ssh 密钥并向服务器执行 ssh-copy-id ?

答案1

如果新服务器仅支持密钥身份验证,那么您就按照@dr01 的说法操之过急了。

假设您的新服务器仍然允许密码连接,唯一可能的“密钥交换”似乎是这样的:

1) 生成密钥newmachine
2) 使用已配置的密钥登录现有服务器
3) scp newuser@newmachine:/path/to/generated/pubkey ~/newuser_newmachine_pubkey
4)cat ~/newuser_newmachine_pubkey >> ~/.ssh/authorized_keys

这手动执行与 ssh-copy-id 所做的相同的事情,除了从新盒子“拉出”密钥,而不是 ssh-copy-id 从新盒子“推送”到远程服务器。

答案2

你不能。您需要以某种方式进行身份验证才能访问服务器(在本例中,是将您的公钥放在服务器上)。

首先,您设置 pubkey 身份验证并将 pubkey 复制到服务器,然后禁用密码身份验证。

相关内容