我在遠端主機上有一個透過 IP 位址連接的裝置(請參閱下圖)。對於此範例,我的遠端主機名為我的遠端,並且該設備在我的遠端如 192.168.3.15,連接埠 55555。
我想連接到本機上的此裝置(本機)這樣我就可以以同樣的方式直接存取設備。我嘗試連接以ssh
映射端口,但無法訪問該設備。
如何設定 ssh 隧道,以便請求連接到設備 (192.168.3.15:55555) 並可以在本機上存取它?我嘗試過使用ssh tunnel
但沒有太大成功:
# executed from command line on localhost
ssh -vvv -N -T -L :55555:192.168.3.15:55555 username@myremote
我需要從本地主機連接到位於 192.168.3.15:55555 的設備,該設備僅在遠端主機上可見。我可以與 ssh 正常連接,並且可以使其他隧道操作正常工作(例如 jupyter 筆記本遠端伺服器)。但是,到目前為止我還無法到達設備本身。注意:該設備使用乙太網路電纜在本地連接到遠端,並且在遠端主機的 LAN 上無法看到。
答案1
我成功運行此命令:
ssh -vvv -N -T -L 55555:192.168.3.15:55555 username@myremote
也許當 ssh 不起作用時,您可以向我們提供 ssh 的輸出。
在我的連結上我得到:
Authenticated to myremote ([XXX.XXX.XXX.XXX]:22).
debug1: Local connections to LOCALHOST:55555 forwarded to remote address 192.168.3.15:55555
也可能是遠端 ssh 主機上不允許轉送。
在 myremote 主機上檢查 openssh 伺服器:
grep AllowTcpForwarding /etc/ssh/sshd_config
或 dropbear 的參數 -a、-j 和 -k
另請記住,您轉送的是 TCP 連接埠 - 而不是 UDP