jrd*_*oko 4 ssh tunneling proxy gateway netcat
我与发布另一个问题的人处于完全相同的情况,我试图通过网关服务器建立 ssh 连接,而不必 ssh 进入网关并从那里再次手动 ssh 到目标服务器。我正在尝试设置那里接受的答案中给出的解决方案,~/.ssh/config
其中包括:
host foo
User webby
ProxyCommand ssh a nc -w 3 %h %p
host a
User johndoe
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试时ssh foo
,我的连接会保持活动状态 3 秒,然后因Write failed: Broken pipe
错误而终止。删除该-w 3
选项可以解决问题。-w 3
在原始解决方案中这样做的目的是什么,为什么Broken pipe
在我使用它时会导致错误?省略它有什么害处?
-w 3
在原始解决方案中的目的是什么
nc
当ssh
会话不正确关闭时,它避免了使孤立进程在远程主机上运行。
为什么
Broken pipe
在我使用它时会导致错误?
尝试将超时nc
增加到 90 并设置ServerAliveInterval
为 30 以查看您的问题是否消失:
host foo
User webby
ServerAliveInterval 30
ProxyCommand ssh a nc -w 90 %h %p
Run Code Online (Sandbox Code Playgroud)