VNC入门:tightVNC + noVNC通过浏览器访问远程桌面

 

一、VNC基础介绍:什么是VNC

VNC就是一种内网远程桌面控制系统,由AT&T欧洲实验室开发。到现在已经由很多VNC版本,比如tightVNC, tigerVNC,RealVNC 等。

VNC 包含  被控端VNC server 和  查看端VNC Viewer 。
被访问的机器安装VNC server,访问的机器通过VNC Viewer来访问VNC server。

本篇介绍的内容是:tightVNC搭建VNC server,而访问VNC server的时候,不使用VNC viewer,而使用noVNC 通过浏览器来访问。

 二、实现原理: 代理关系

网络代理关系图

kvm vnc端口取值范围_kvm vnc端口取值范围

 

代理关系说明

1,被访问机器安装tightVNC成为VNC server,开放5900端口
2,浏览器访问VNC server 需要Tcp 到websocket的转化,因此 使用websockify 把5900端口代理到8080
3,通过nginx 把noVNC的web服务代理到80端口,供外界访问。
4,在其他机器上,通过输入 url:80/vnc.html

三、操作步骤

3.1 下载安装tightvnc

tight VNC下载地址:www.tightvnc.com/download.php我这里使用的windows版本的,所以安装和启动和一般的软件安装一样,就不多做赘述。

 

3.2 下载node,并安装nodejs

下载nodejs是为了运行 websocket-to-tcp 服务,就去node.js 官网下一个安装就好。

https://nodejs.org/zh-cn/download/

 

3.3 下载并启用websocket-to-tcp 服务

websocket-to-tcp包的下载地址: https://www.npmjs.com/package/package/@manage安装方式: npm i @maximegris/node-websockify
举个例子: 比如在C盘下创见一个文件夹,叫做websocketcp,进入这个文件目录下,通过npm命令安装这个包。
配置并启用websocket-to-tcp服务: 在C:/webscoketcp下创建config.js 文件内容为:

var websockify = require('@maximegris/node-websockify');
//192.168.1.180 为VNC server主机的IP
websockify({
    source: '192.168.1.180:8080',//websocket Server 的服务地址和端口,端口号为8080
    target: '192.168.1.180:5900',//VNC Server 的服务地址和端口,端口号为 5900
});
启用命令: node config.js 启用websocket-to-tcp 服务
3.4 下载启用nginx服务

 

3.5 下载noVNC服务,通过nginx 启用该服务

下载noVNC: github.com/novnc/noVNC把noVNC服务部署到Nginx上: 把noVNC项目放在 nginx/html 目录下
启动nginx服务: 在Nginx 目录下,使用命令行命令: nginx.exe start 启动服务

 

3.6 使用noVNC访问VNC服务器

websocket 输入 websocket server 的地址和端口号,点击连接就可以访问。访问结果,如下图:

kvm vnc端口取值范围_重启_02


 ==============================================================

VNC小技巧:隐藏VNC图标等

A. 隐藏VNC图标

Windows环境下:

kvm vnc端口取值范围_重启_03

 

 重启VNC Server,可以看到右下角已经没有VNC图标了。

 

老版本VNC Server 4.4.2 及之后部分版本隐藏图标:

kvm vnc端口取值范围_nginx_04

 

  重启VNC Server,可以看到右下角已经没有VNC图标了。

 

通过注册表隐藏VNC Server6 的图标

  在注册表中,找到[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vncserver]

      将ImagePath里的内容"C:\Program Files\RealVNC\VNC Server\vncserver.exe" -service 改为

       "C:\Program Files\RealVNC\VNC Server\vncserver.exe" -service -DisableTrayIcon=1

  重启VNC Server,可以看到右下角已经没有VNC图标了

 

 

·

 

人生只若初见................