Ssh
ssh隧道時netcat的“-w timeout”選項的目的是什麼?
我與發布另一個問題的人處於完全相同的情況,我試圖通過網關伺服器建立 ssh 連接,而不必通過 ssh 進入網關並從那裡再次手動 ssh 到目標伺服器。我正在嘗試在那裡設置接受的答案中給出的解決方案,
~/.ssh/config
其中包括:host foo User webby ProxyCommand ssh a nc -w 3 %h %p host a User johndoe
但是,當我嘗試時
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