不知道你有没有遇到这样一种苦恼,就是不管你有多熟悉一个服务器的ip地址,你也还是要一字不错的打出来,并且每次都要输入密码。你可能会疑惑,服务器啊,我都对你这么熟悉了,你就不能对我产生一丁点好感吗?为啥每次都要我输入你家房门的密码,你就不能对我打开心门吗?

额,好像有点走题了,但是意思大家应该都懂了吧。

但其实你还是不够懂ssh,ssh是支持免密访问的啊。只要你和远程服务器都有一个共通的暗语,这样你就可以直接ssh连接远程服务器,而不用输入密码了。这个暗语通过ssh-keygen -t rsa在你本机生成(一直回车就可以了),然后通过ssh-copy-id root@IP -p port把公钥复制到远程主机的~/ .ssh/authorized_key.文件中。然后你ssh连接远程主机时就会带上你的私钥和服务器上的公钥做对比,确认是你就可以让你登录。

但是做到这就算做完了吗?还没有。因为你还有两个东西需要每次都输入,那就是你登录远程服务器的用户名和服务器的ip地址。什么?一个你这么熟悉的人竟然每次见你还要你把名字说一遍,这真是让人沮丧啊。所以我们的目的就是干掉这个用户名。而服务器的ip地址你也是非常熟悉的,为啥还要我每次都输入啊。就像你去一个很熟悉的地方,不用每次都打开地图把地址输一遍然后跟着导航走吧。所以对于一个我们很熟悉的地方,我们已经把路线在脑中记忆下来了。那么对于服务器也是如此,我们也可以把这个ip地址让本机大脑记住,就不用我们每次都输入了。

具体步骤就是进入到~/.ssh目录,然后执行vim config,在里面输入如下信息:

Host        apps

    HostName        192.100.3.50

    Port            22

    User            root

    IdentityFile    ~/.ssh/id_rsa

Host就是你这个熟悉的服务器的别名,HostName就是服务器的地址,Port就是ssh的端口,User就是登录用户,IdentityFile就是你的私钥地址(因为服务器上已经有你的公钥了)。输入完毕按esc :然后按x,就能保存并且退出了。然后就是见证奇迹的时刻:

➜  .ssh ssh apps
Last login: Mon Jul 22 16:49:49 2019 from 192.100.5.203
[root@app-server ~]#

That is all!没有其他冗余的操作,连接服务器本来的面目就应该是这样,输入ssh命令,然后空格,然后服务器在你心中的名字,然后它就被你召唤出来了,是不是有一种玩数码宝贝的感觉。哈哈,以后遇到什么好玩的还继续分享给大家哦~



技术分享      ssh

本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!