Linux

使用 Putty 通過反向 SSH 隧道進行代理

  • January 15, 2017

我有一台遠端機器remotePi,它使用 autossh 來維護到本地機器localPi的反向隧道。當 SSH 進入localPi時,我可以使用 localhost:3333可靠地 ssh 進入remotePi 。

現在我有一台帶有瀏覽器的桌面 Windows 機器localWin,我想通過它代理到remotePi的 LAN以訪問本地 HTTP 資源。

到目前為止,使用 Putty,我一直無法實現這一點。我知道如何用一跳來做到這一點,但第二跳卻讓我望而卻步。這是否可以直接從 Putty 進行,還是需要手動發出一些額外的 ssh 命令?

在 localPi:3333 的膩子隧道配置中,選擇隧道類型動態(而不是本地或遠端)。輸入源埠 3334,留空隧道目標。最後的字元串應為 D3334。

現在將您的 Windows 瀏覽器配置為在 localhost:3334 使用 SOCKS 代理。

SOCKS 協議意味著即使 Windows 瀏覽器將 TCP 流量發送到一個 IP,瀏覽器也會在 TCP 流量“內部”包含目標 IP 地址。動態隧道與 SOCKS 兼容,因此隧道會解碼目標 IP 並指示您的 remotePi 代表您連接到目標 IP。

您與 localPi:3333 的通信根本不與 localPi 的 sshd 通信。它只做 3333 隧道。3334 隧道位於 localWin 的 putty 和 remotePi 的 sshd 之間。

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