![我们如何指定 ssh 默认身份?](https://linux22.com/image/1270198/%E6%88%91%E4%BB%AC%E5%A6%82%E4%BD%95%E6%8C%87%E5%AE%9A%20ssh%20%E9%BB%98%E8%AE%A4%E8%BA%AB%E4%BB%BD%EF%BC%9F.png)
id_rsa 通常是默认密钥。
我创建了一个名为“keyhello”的新密钥
更新:我还通过执行以下操作添加了此密钥:
ssh-add /home/myuser/.ssh/keyhello
但我相信它仍然不是我的默认密钥。
那么,我们如何才能将 keyhello 作为默认身份,而不是 id_rsa ?
我确实看到了 -t 但我已经尝试过:
ssh-agent /home/mysuser/.ssh/keyhello -t
这次运气不好。我得到了“权限被拒绝”的结果(如果我输入 sudo ssh-agent ... 我得到了同样的“权限被拒绝,甚至没有提示我输入 sudo 密码”。
答案1
在您的 ~/.ssh/config 文件中输入:
IdentityFile /home/myuser/.ssh/keyhello
这将告诉传出的 ssh 连接使用它作为默认身份
答案2
/usr/bin/ssh-copy-id 将使用与 id_*.pub 匹配的最后创建的文件。要更改默认文件,只需触摸它即可。
me@my-machine:~/.ssh$ touch id_rsa id_rsa.pub
答案3
您可以在命令行上使用该-i
选项指定备用密钥文件,也可以IdentityFile
在 ssh 客户端配置文件中永久更改它。
答案4
如果您想更改发送的默认设置,请在文件中更改id_*.pub
为。您会在第 60 行或类似位置找到它。该行以 开头,之后您将看到。keyhello.pub
/usr/bin/ssh-copy-id
DEFAULT_PUB_ID_FILE
"$HOME/$(cd "$HOME" ; ls -t .ssh/id_*.pub"