我们如何指定ssh默认身份?


32

id_rsa通常是默认密钥。

我创建了一个名为“ keyhello”的新密钥。

更新:我还通过执行以下操作添加了此键:

ssh-add /home/myuser/.ssh/keyhello

但我相信它仍然不是我的默认密钥。

因此,如何将keyhello代替id_rsa成为默认标识?

我确实看到了-t,但是我已经尝试过:

ssh-agent /home/mysuser/.ssh/keyhello -t 

没有运气。我得到一个“权限被拒绝”(如果我放了sudo ssh-agent ...,我得到了同样的“权限被拒绝,甚至提示我我的sudo通过)。

Answers:


49

在〜/ .ssh / config文件中:

IdentityFile /home/myuser/.ssh/keyhello

这将告诉传出的ssh连接将其用作默认标识


1
去吧 如果配置文件不存在。我必须创建它。
MEM

5

您可以在命令行中使用该-i选项指定备用密钥文件,也可以IdentityFile在ssh客户端配置文件中对其进行永久更改。



1

/usr/bin/ssh-copy-id第59行的文件中:

most_recent_id="$(cd "$HOME" ; ls -t .ssh/id*.pub 2>/dev/null | grep -v -- '-cert.pub$' | head -n 1)"

DEFAULT_PUB_ID_FILE="${most_recent_id:+$HOME/}$most_recent_id"

默认为最新文件,您可以更改此文件。请注意,您的文件必须以“ id”开头。


-2

如果要更改发送的默认邮件,请更改id_*.pubkeyhello.pubin file /usr/bin/ssh-copy-id。您会在第60行之类的地方找到它。该行以开头,DEFAULT_PUB_ID_FILE之后您将看到"$HOME/$(cd "$HOME" ; ls -t .ssh/id_*.pub"


认真吗 该用户可以进行会影响他们(并且只有他们)的配置更改的唯一方法是修改系统文件(可能会影响系统上的所有用户)?您的回答比这个问题的其他回答(6.5岁)好吗?
斯科特(Scott)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.