如果你有很多的服务器要连接,如果对你来说记住那些服务器的地址、端口实在是一种痛苦,如果你一直在寻找一种能够简化在命令行下连接SSH服务器的办法,那么,本文将给你提供一种解决问题的思路,那就是,使用SSH的config文件。
SSH config文件是什么
Open SSH客户端配置文件,允许你以配置项的形式,记录各个服务器的连接信息,并允许你使用一个定义好的别名来代替其对应的ssh命令参数。
SSH config文件该怎么用
创建SSH config文件
通常来说,该文件会出现在两个地方,一个是/etc/ssh/ssh_config
,一个是~/.ssh/config
。
/etc/ssh/ssh_config
文件通常用来定义全局范围上的SSH客户端参数,而~/.ssh/config
则被用来定义每个用户自己的SSH客户端的配置。我们将要修改的,就是位于用户目录下的config文件。
如果~/.ssh/config
文件不存在,那么也不用着急,这是正常的,只需要执行如下命令,即可新建一个空白的config文件
1 | touch ~/.ssh/config |
编写config条目
假如说,我们想连接到一台服务器,它的地址是example.server.com,端口号是2222,以用户admin登陆,并使用~/.ssh/id_rsa这个私钥验证身份。那么,我们需要在命令行里输入:
1 | ssh admin@example.server.com -p 2222 -i ~/.ssh/id_rsa |
嗯好吧,-i参数可以省略,但即使这样,命令还是很长,对吧?
那么我们把这个服务器的连接参数写到config文件里,就变成了这个样子:
1 | # 此处我为了美观起见,给每个子条目都缩进了一层,实际使用时缩进不影响文件的效果。 |
嗯,在这里,它还有了一个新名字,叫sample
。
然后,我们只需要:
1 | ssh sample |
就可以连接到这台主机了。
这玩意有意思,我还想了解更多!
好吧,为了满足你的好奇心,我这里为你提供了3篇博客供你参考。当然,这三篇博客也是我编写本文时的参考文档。
How To Configure Custom Connection Options for your SSH Client
Simplify Your Life With an SSH Config File
另外,您也可以阅读ssh_config的手册页,来获得最原始的信息,阅读该手册的命令是:
1 | man ssh_config |
本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!