在一个终端使用多个SSH私钥

实验室的服务器需要通过ssh访问,但是计算中心有自己的ssh key(曾经我的解决办法是暴力将所有server的ssh key换成同一个)。今天学到了,可以通过设置~/.ssh/config,这样在一个终端,可以访问不同的server时候,会使用不同的ssh private key。因为你可以在.ssh/config里面指定所用的private key! (IdentityFile)

Host server_name
     HostName ip-or-domain-of-server
     Port #some number
     User user
     IdentityFile ~/.ssh/id_rsa_real

其中,HostName, Port, User 都需要根据情况自行设定。IdentityFile是相对应的ssh private key。

但是,今天我有个知识盲区:不知道config file 的作用!

因为通常我ssh到服务器都是通过如下命令的(也不嫌烦):

ssh [email protected] -p 2322

然而,如果你设置了config file,就可以很轻松的ssh,因为ssh客户端会阅读你的config,并且使用你制定好的ssh细节:

Host dev
    HostName dev.example.com
    User username
    Port 2322

等于说,你下次连接Host,只需要敲:

ssh dev

非常高级!希望对大家有用!

本小白,每天在实验室里都在痛苦地摸索....

Reference:

https://linuxize.com/post/using-the-ssh-config-file/

https://stackoverflow.com/a/11251797

你可能感兴趣的:(cozy,learning)