Networking
使 VNC 可用而不打開到 WAN 的非 ssh 埠
我有一個本地網路,由一個執行 dd-wrt 的網關路由器/防火牆、一台執行 OS X 的名為 mac 的機器和一個名為 ssh-server 的 Debian 主機組成。防火牆將埠 22 轉發到 ssh-server。
我想讓 mac 上的 VNC 在本地網路之外可用,只有 ssh-server 上的 SSH 埠對 WAN 開放。換句話說,我不想將防火牆配置為將埠轉發到 mac:5900 或打開任何其他埠。這可能嗎?如何?
我有一個遠端訪問解決方案,但它需要打開另一個埠。它在 ssh-server 和 mac 之間使用 ssh 隧道(詳見下文)。但是,我不喜歡這個解決方案,因為我需要打開另一個到 WAN 的埠,而且它不必要地使用了 LAN 上的安全協議。
我所做的是: ssh-server$ ssh -nNT -L *:12345:mac:5900 user@mac
然後設置防火牆將埠 12345 轉發到 ssh-server:12345。
最後,從 WAN 我使用 ssh 埠轉發連接到 wan:12345。
但是,我不喜歡這個解決方案在 WAN 上打開埠 12345 並轉發到 VNC。
關於什麼
remote-client% ssh firewall-port22-which-goes-to-ssh-server -L 5900:mac:5900
其次是
remote-client% vncviewer localhost:5900