我正在尝试登录我在 IBM 云中创建的实例。
当我尝试执行命令“ssh -i ~/.ssh root@[我的实例的 IP 地址]”时,收到错误“加载密钥“/root/.ssh/”:目录 root@[我的实例的 IP 地址] 的密码是:
在执行此命令之前,我确实运行了 ssh-keygen 并能够生成一组新的文件,即 id_rsa 和 id_rsa.pub。
我已经在 2 个文件 id_rsa 和 id_rsa.pub 上运行了 chmod 700,但这似乎没有起作用。
有人能帮助我理解为什么上面的命令,即“ssh -i ~/.ssh root@[我的实例的 IP_address] 会导致这个错误吗?
答案1
该-i
选项需要私钥的名称文件,而不是目录的名称包含文件:
ssh -i ~/.ssh/id_rsa root@[IP_address of my instance]
但是,由于~/.ssh/id_rsa
是默认的 RSA 密钥文件,因此您可以-i
完全省略该选项及其参数
ssh root@[IP_address of my instance]
当然,为了使身份验证成功,您需要将公钥复制到authorized_keys
远程帐户上的文件中 - 使用ssh-copy-id
或其他方式。