这是以下用例:想要ssh server1在 3 个场景中:
~/.ssh/config为此定义隧道期望的结果:能够使用相同的命令并能够连接到服务器。
您已经暗示了解决方案,并且通过 dave4420 的附加提示,我感觉我发布答案是在作弊。
本质上,该ssh-config ProxyCommand指令解决了两种非本地情况下“如何连接”的问题。剩下的问题归结为“如何使用一个命令并忽略确定使用哪种情况的问题”。
在 .ssh/config 文件中为以下三种情况定义一个主机昵称:主机 server1a、主机 server1b、主机 server1c。
定义第四个昵称,它将是连接到该服务器的命令,始终为:Host server1。
编写一个脚本来实现您在问题中定义的逻辑。我无法在这里对此进行伪代码,因为我不确定您将使用哪些测试来确定您处于三种情况中的哪一种。在所有三种情况下,您都可以使用 ssh 命令,例如ssh server1a。使用此脚本作为ProxyCommand第四个昵称。
现在根据上下文ssh server1进行代理。ssh server1[abc]
更多关于ProxyCommand愚蠢的 SSH 技巧。
| 归档时间: |
|
| 查看次数: |
270 次 |
| 最近记录: |