如果我在 ssh 配置中指定
Host myhost
User myname
IdentityFile mykey
那么什么是IdentitfyFile
:私钥或公钥?
答案1
私钥。看https://linux.die.net/man/5/ssh_config。它默认为~/.ssh/id_rsa
,当您生成密钥对时,公共密钥对默认为~/.ssh/id_rsa.pub
.
如果你有兴趣:私钥是您本人有权访问的密钥。这是将其用作身份验证方法的基本假设。当您通过识别文件提供密钥时,它实际上不会发送到远程服务器。公钥-私钥对允许您证明您无需发送即可拥有它,从而保持其私密性。一旦服务器验证了此证明,它将相信您是相关用户。为了进行此证明,它要求服务器知道与私钥匹配的公钥,这就是为什么您将这些.ssh/authorized_keys
(或类似的)放在服务器上。您可能会在许多服务器上使用相同的公钥。