与多个服务器轻松建立 ssh 连接

与多个服务器轻松建立 ssh 连接

我的目标是能够输入:

  • srv01.sms 并连接到 srv01.anything0.example

  • srv02.mail 并连接到 srv02.anything1.example

我知道我可以编辑 .ssh/config 文件来执行类似的操作,但我不想编辑 500 台服务器的 .ssh/config 文件

有没有办法做到这一点?在 ssh 配置中? bash 别名?

答案1

如果您只有很少的模式(短信/邮件),但服务器数量很大,那么您可以使用 ssh_config 支持的模式

模式由零个或多个非空白字符、“*”(匹配零个或多个字符的通配符)或“?”组成(与一个字符完全匹配的通配符)。

(从ssh_配置(5))。

以及%h主机名规范中的(远程主机名)标记:

Host srv*.sms
    Hostname %handmore.example


Host srv*.mail
    Hostname %handmore.example

现在,任何运行尝试ssh srv<xyz>.sms都将连接到srv<xyz>.smsandmore.example,同样对于.mail

相关内容