我已经在家用电脑上启动了 vncserver,运行 Ubuntu 10.10。
我启用了用户连接功能,并要求输入密码
昨天我在 Ubuntu 上测试了这个
vncviewer localhost:1
我就能看到我的桌面了。
现在我在工作中使用 CentOS 并且我输入:vncviewer x.x.x.x:1
但我无法连接。
我该怎么做才能允许通过互联网远程桌面访问我的家用电脑?如果不推荐使用完整桌面,我也可以只访问家用电脑上的终端。谢谢!
编辑:
CentOS 机器通过互联网。家里的网络设置是计算机直接连接到 DSL 调制解调器。
答案1
要建立传入连接,通常必须在家庭网络路由器中设置端口转发。对于 VNC,它是 TCP 端口 5900+n, 在哪里n是显示号码。对于:1
,它将是 5901。
然而,由于 VNC 缺乏任何安全措施(除了以纯文本发送的可选密码之外),通过 SSH 隧道连接会更安全。
在 Ubuntu 上安装openssh-server
,转发 SSH 端口 tcp/22 而不是 VNC,然后使用以下命令从 CentOS 连接:
ssh -fNL 5911:localhost:5901 ubuntubox.domain.tld
vncviewer localhost:11
答案2
这可能行不通。除非您有静态 IP 地址,否则您将无法使用正常方式连接到家庭网络。您可以使用 FreeDNS 或 DynDNS 等服务。有一个不错的教程关于如何建立这样的系统。我认为你不需要真正购买域名,我认为你可以占用别人的域名。无论如何,以下是发生的事情:
- 您的 IP 地址可能会频繁更改
- 你的计算机将与 FreeDNS 对话,并告知它 IP 何时发生变化
- FreeDNS 会将所有流量路由到您的计算机
完成此设置后,您将需要使用如下命令:
vncviewer yourdomain:port
其中 yourdomain 是通过 FreeDNS 或 DynDNS 注册的域,port 是您的 vnc 服务器正在运行的端口。
这并不是太复杂...我在一个下午就设置好了它,并且我可以从任何地方访问我的桌面。