
使用 SSH,我可以執行類似ssh -R 8080:127.0.0.1:8080 remote.host
將本機連接埠 8080 轉送到遠端主機之類的操作。
我正在嘗試做類似的事情,但我需要轉發的連接埠位於我缺乏 shell 存取權限的遠端電腦上。例如,如果遠端電腦位於192.168.1.10
,我希望remote.host:8080
來自192.168.1.10:8080
。
這可以透過普通的 SSH 來完成嗎?在某些時候,我將透過在路由器中進行連接埠轉送來簡化此操作,但幾天內我將無法獲得該層級的存取權限。
答案1
如果您對同一網路上的另一台伺服器有 shell 存取權限,則可以secondserver
透過 SSH 連線並使用它將所有到本機連接埠 8080 的連線透過隧道傳輸到攝影機的連接埠 8080 (IP 192.168.1.10
):
ssh -L 8080:192.168.1.10:8080 secondserver
答案2
如果您可以在 上執行 ssh 用戶端192.168.1.10
,那麼這很容易。使用標準 ssh 命令列工具時,有一個-L
選項,其作用相反-R
- 它將流量從本地連接埠轉送到可從 ssh 伺服器存取的連接埠。
如果192.168.1.10
是 Windows 計算機,我推薦 PuTTY,您可以在其中透過「設定」選單設定這些網路隧道。