VNC访问windows远程桌面的配置步骤

在当今的数字化办公与远程管理环境中,Windows 系统下的远程桌面访问已经有了多种多样的实现方式。我们既可以使用 Windows 系统自带的 mstsc,这种方式简洁方便,很多用户都比较熟悉;也可以选择使用 teamviewer 之类的第三方软件,它们功能强大,但需要在客户端进行安装。
当我们使用 esxi 和 pve 这些虚拟化平台的时候,会发现它们是可以通过 web 方式进行访问的,其中 pve 使用的是 noVNC 技术来实现这一功能。接下来,我们详细说一说在这种环境下实现远程访问的方法。其实,之前我就对 vnc 相关的内容进行过研究,不过当时并没有成功,现在再次尝试一下,并顺便把遇到的问题记录下来,希望能给其他有同样需求的人一些参考。
VNC访问windows远程桌面的配置步骤插图

一、安装 VNC Server

VNC Server 的种类繁多,在本次实践中,我们选用 UltraVNC。它的安装过程相对简单,基本上一路点击 “下一步” 就可以顺利完成。安装完成后,运行 UltraVNC Server,这时在系统右下角的图标中可以找到相关操作选项。我们可以将其注册为服务,然后启动该服务。在 “Admin Properties”(管理属性)这个设置界面下,我们可以对一些参数进行调整。这里面,最重要的莫过于设置密码了,需要注意的是,如果输入了之前已经使用过的相同密码,系统会给出相应的提示信息。
这里要特别提醒大家,我在操作过程中遇到了一个非常棘手的问题,那就是如果通过远程桌面 mstsc 登录到服务器后再安装 UltraVNC,那么上面提到的 UltraVNC 服务是无法启动的。我也尝试过另外的版本,比如 VNC – Server – 6.7.4,在这种情况下也不行,甚至在 hyper – v 的虚拟机中进行同样的操作也会出现相同的问题,目前我还没有找到有效的解决方法。

二、安装 Nodejs

安装 Nodejs 的过程就比较轻松了,基本上没有什么复杂的地方,只要一路点击 “下一步” 就可以顺利完成安装。安装好 Nodejs 之后,我们需要打开命令行,通过命令行 cd 到一个指定的目录中,然后运行以下几个 npm 命令:
npm install ws
npm install optimist
npm install mime - types
这里我以在 D 盘新建的一个名为 vnc 的文件夹为例,在运行这些命令后,系统会在这个目录下生成 node_modules 文件夹,这个文件夹在后续的操作中会起到重要作用。

三、安装 noVNC

我们可以在 https://github.com/novnc 这个网址下载到 noVNC 和 websockify – js。在本次实践中,我下载的是 noVNC 1.4.0 版本,不过需要注意的是,websockify – js 已经很久没有更新了,而 websockify(不带 js)虽然在更新,但是它是基于 python 的,我们不太清楚该如何在这个场景下使用它。
下载完成后,将 noVNC 解压,然后把解压后的 noVNC – 1.4.0 目录一起放置到前面提到的 node_modules 目录下。接着,将解压后的 websockify – js – master 连同它的目录一起放在 noVNC – 1.4.0 目录下,这样就形成了特定的目录结构。
完成上述准备工作后,我们需要在命令行中 cd 到 websockify.js 所在的目录。在我的操作环境中,这个目录是 D:\vnc\node_modules\noVNC – 1.4.0\websockify – js – master\websockify。然后运行以下命令:
 
node websockify.js --web D:\vnc\node_modules\noVNC - 1.4.0 9000 localhost:5900
这里需要解释一下,其中端口 9000 是用于 web 访问的地址,而 5900 是 vnc 的端口。
完成上述操作后,在浏览器中访问 localhost:9000,这时会发现可以打开页面,但是会提示找不到 index.html 页面。这里有两种解决方法,一种是直接在访问地址后面加上 /vnc.html,也就是访问 localhost:9000/vnc.html,这样就可以正常打开页面了;另一种方法是修改 websockify.js 文件中的内容,将其中的 filename += ‘/index.html’ 改成 filename += ‘/vnc.html’;。不过,让人惊讶的是,经过这种修改后,虽然页面可以正常打开,但是却无法连接 vnc 了。
经过仔细排查,我发现了这个问题的根源。原来是上面命令中的 localhost:5000 这个设置导致的问题。我们需要将 localhost 改成本机的路由器 IP,在我的环境中,我使用 hyper – v 交换机的 172.23.160.1:5900,然后在 hyper – v 的虚拟机浏览器中打开 http://172.23.160.1:9000,这样就没有问题了。
© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容