我有一个本地网络,由运行 dd-wrt 的网关路由器/防火墙、运行 OS X 的 mac 计算机和名为 ssh-server 的 Debian 主机组成。防火墙将端口 22 转发到 ssh-server。
我想让 Mac 上的 VNC 在本地网络之外可用,并且只向 WAN 打开 ssh-server 上的 SSH 端口。换句话说,我不想配置防火墙以将端口转发到 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。
答案1
关于什么
remote-client% ssh firewall-port22-which-goes-to-ssh-server -L 5900:mac:5900
其次是
remote-client% vncviewer localhost:5900