如何在本地机器上组织和使用多个RSA密钥?

我有Server_A,Server_B和Server_C。

我想为每个生成唯一的身份validation密钥,并在运行Lion的本地计算机上组织它们,如下所示:

  • 将server_A键放入Users / username / .ssh / server_A
  • 把server_B键放在Users / username / .ssh / server_B中
  • 把server_C键放在Users / username / .ssh / server_C中

当我连接到Server_A(或B或C)时,如何指定正确的私钥来validation我的本地机器?

你可以像jdw所说的那样使用命令行选项,但saner选项是configurationssh,以便知道自动执行此操作。

创build或编辑〜/ .ssh / config文件并添加以下内容:

Host Server_A IdentityFile ~/.ssh/server_A Host Server_B IdentityFile ~/.ssh/server_B Host Server_C IdentityFile ~/.ssh/server_C 

现在,无论何时你ssh / scp到这些服务器,它都将使用相应的私钥。

就个人而言,我只是适当地命名他们。 id_rsa旧的默认值会让人困惑。 我给他们起名,所以我知道他们是什么:

 ~.ssh/foo.com ~.ssh/foo.com.pub 

我把foo.com.pub放到foo.com上,然后当我连接到foo.com时,我使用这样的东西:

 ssh foo.com -luser -i~.ssh/foo.com 

或者,在你的情况下,像

 ssh Server_A -lusername -i/Users/username/.ssh/server_A