设置默认的ssh密钥位置

时间:2008-09-17 14:53:58

标签: ssh

ssh默认会在〜/ .ssh文件夹中查找其键。我想强迫它总是在另一个地方看。

我正在使用的解决方法是将密钥从非标准位置添加到代理:

ssh-agent
ssh-add /path/to/where/keys/really/are/id_rsa 

(在Windows上的Linux和MingW32 shell上)

2 个答案:

答案 0 :(得分:80)

如果您只想指向身份文件的其他位置,可以使用以下条目修改〜/ .ssh / config文件:

IdentityFile ~/.foo/identity

man ssh_config找到其他配置选项。

答案 1 :(得分:18)

man ssh告诉我这个选项可能会有用。

  

-i identity_file                选择RSA或其身份(私钥)的文件                读取DSA身份验证。默认值为〜/ .ssh / identity                协议版本1,以及〜/ .ssh / id_rsa和〜/ .ssh / id_dsa                协议版本2.身份文件也可以在                配置文件中的主机基础。有可能                多个-i选项(以及配置中指定的多个标识)                uration文件)。

因此,您可以使用类似

的内容在bash配置中创建别名
  

alias ssh =“ssh -i / path / to / private_key”

我没有查看过ssh配置文件,但是像-i选项一样,这也可能是别名

  

-F configfile                指定备用的每用户配置文件。如果一个                配置文件在系统范围的命令行中给出                配置文件(/ etc / ssh / ssh_config)将被忽略。该                每用户配置文件的默认值为〜/ .ssh / config。