Ssh

嘗試訪問隧道 HTTP 埠時出現“協議不匹配”

  • April 20, 2017

我使用的是 Mac 10.7.4,並且我在遠端伺服器的埠 8082 上執行了一個 HTTP 服務,我只能通過中間伺服器訪問它。所以我執行這些隧道命令

ssh -L 8082:remote-server:22 dalvarado@intermediate-server
ssh dalvarado@localhost -p 8082

但是,當我打開網路瀏覽器(Safari 或 Chrome)並訪問

http://localhost:8082/

我得到錯誤

SSH-2.0-OpenSSH_5.3
Protocol mismatch.

我已經驗證了遠端伺服器的 sshd_config 文件包含“協議 2”,我什至嘗試將“-2”標誌添加到上述 SSH 命令中,但我仍然收到錯誤消息。

任何幫助表示讚賞, - 戴夫

如果中間伺服器的設置允許這樣做,您應該能夠使用單個隧道執行此操作:

ssh -L 8082:remote-server:8082 dalvarado@intermediate-server

然後將瀏覽器指向

http://localhost:8082/

如果 remote-server:8082 只能從 remote-server 本身訪問,則需要進一步隧道:

ssh -L 8022:remote-server:22 dalvarado@intermediate-server
ssh -L 8082:localhost:8082 dalvarado@localhost -p 8022

然後將瀏覽器指向http://localhost:8082/

引用自:https://serverfault.com/questions/420875