主机设置
# 主机设置
用户个人的配置文件~/.ssh/config
,可以按照不同服务器,列出各自的连接参数,从而不必每一次登录都输入重复的参数。下面是一个例子。
Host *
Port 2222
Host remoteserver
HostName remote.example.com
User neo
Port 2112
1
2
3
4
5
6
7
2
3
4
5
6
7
上面代码中,Host *
表示对所有主机生效,后面的Port 2222
表示所有主机的默认连接端口都是2222,这样就不用在登录时特别指定端口了。这里的缩进并不是必需的,只是为了视觉上,易于识别针对不同主机的设置。
后面的Host remoteserver
表示,下面的设置只对主机remoteserver
生效。remoteserver
只是一个别名,具体的主机由HostName
命令指定,User
和Port
这两项分别表示用户名和端口。这里的Port
会覆盖上面Host *
部分的Port
设置。
以后,登录remote.example.com
时,只要执行ssh remoteserver
命令,就会自动套用 config 文件里面指定的参数。
单个主机的配置格式如下。
$ ssh remoteserver
# 等同于
$ ssh -p 2112 neo@remote.example.com
1
2
3
2
3
Host
命令的值可以使用通配符,比如Host *
表示对所有主机都有效的设置,Host *.edu
表示只对一级域名为.edu
的主机有效的设置。它们的设置都可以被单个主机的设置覆盖。
上次更新: 2023/10/17, 16:39:02