简短的问题是,我想知道是否可以在终端中为 ssh 连接赋予“友好”名称?
我的长期推理是......
我有几个服务器集群通过 NAT 在单个 IP 地址后面运行。我可以使用不同的端口号通过 SSH 进入每个集群中的各个服务器,例如:
ssh clust1 -p 2210
ssh clust1 -p 2220
ssh clust1 -p 2230
在 Putty/Windows 中,我会给每个连接赋予不同的名称(集群1-web1,集群1-web2,集群1-web3),但在终端中我看不到这样做的方法。这带来了一个问题,因为我无法通过主机名区分我所连接的服务器,并且端口号有点随机。
答案1
从终端运行此命令:
nano ~/.ssh/config
然后您可以像这样插入您的主机:
Host clust1-web1
Hostname clust1
User Username
Port 2210
Host clust1-web2
Hostname clust1
User Username
Port 2220
然后你只需运行以下命令即可进行 ssh:
ssh clust1-web1
要获得可放置在此文件中的参数的完整列表,您可以运行:
man ssh_config
答案2
它不太一样,但您可以将每个连接命令保存为别名。
或者如果你不能用这种方式做,只需将每个连接命令存储为 shellscript/bashscript,可能名为 connect-clust1-web1,并将它们存储在你的 PATH 中的文件夹中
因此您只需输入 connect-clust1-web1 即可连接。
答案3
您可以在您的中配置别名~/.ssh/config
:
Host clust-web1
Hostname clust1.somedomain.tld
Port 2210
(ETC)
然后,您可以使用别名 ssh 到该主机:
ssh clust-web1