我有2台服务器用于工作:第一台是应用服务器,另一台是档案服务器。 我使用F-Secure SSH Client访问这两个服务器,使用相同的用户ID和公钥 - 私钥对进行身份验证。这意味着私钥存储在Windows机器上,公钥存储在两台服务器上。
现在我需要从应用服务器访问归档服务器。要做到这一点,我必须先进行密钥交换。
在这种情况下,什么是标准方法?我只是将我的私钥从Windows复制到应用程序服务器吗?它会危及安全吗?或者我需要生成一个新的密钥?
我很乐意帮助你!
P.S。我对Unix管理比较陌生,所以不要对我很难:)
答案 0 :(得分:5)
标准方法是:
旁注:授权密钥文件以及密钥对是用户@机器相关的
Sidenote2:通常ppl完全阻止root进程。 Root既不能通过pw auth访问,也不能通过密钥auth访问。
答案 1 :(得分:1)
@fyr的答案是正确的,但是您不需要手动添加或复制任何内容。您可以使用ssh-copy-id
来做到这一点。
假设新计算机上的SSH服务器已经在运行,请从旧计算机(已经有SSH密钥对,如果没有运行ssh-keygen
)运行
ssh-copy-id -i ~/.ssh/mykey user@host
其中-i
参数表示公用密钥的位置。 ssh-copy-id
工具会在需要时添加.pub扩展名,因此它不会尝试发送您的私钥。
一个真实的例子,假设与Raspberry Pi交换密钥,将是:
ssh-copy-id -i ~/.ssh/id_rsa pi@192.168.1.11
这将要求您输入密码,但只输入一次。如果密钥交换成功,您将可以ssh
进入其中而无需输入密码。