由于一些我不会详述的原因,我经常需要设置到远程机器的多个 SSH 隧道 —— 如果能够从桌面启动器(我使用 GNOME Do)使用单个命令来启动它会很好。
目前我已设置了 .ssh/config,内容如下(略作剪辑并匿名化):
Host hawkeye
Hostname hawkeye.avengers.com
Port 22
User thedudeabides
IdentityFile ~/.ssh/id_rsa
LocalForward 8888 webproxy.avengers.com:888
LocalForward 4845 irc.avengers.com:7434
LocalForward 4093 git.avengers.com:3329
..我打开一个终端并运行“ssh hawkeye”,它会设置隧道并让我通过 ssh 进入 hawkeye。
问题是(当然是小问题)我经常不想打开远程控制台会话,我希望能够使用 GNOME Do 中的单个命令来设置这些隧道,因此隧道已设置并处于后台,但没有打开终端。
我尝试过使用各种 SSH 标志的脚本,但它从未按预期工作。
任何帮助均感激不尽。
答案1
ssh -N hawkeye
按照手册页中所述使用:
-N Do not execute a remote command. This is useful for just for‐
warding ports (protocol version 2 only).