webvnc之novnc实战

本文介绍如何在CentOS6环境中,通过安装VNC服务器和使用novnc代理,实现通过Web界面远程访问主机进行安装进度查看。

环境准备

最近做一个安装部署工具,希望通过vnc去连接主机去看安装进度,集成到web中使用,novnc是一种选择。

环境如下,两个主机host1 host2,web装载81.224中,环境使用的centos6


在host1和host2中都安装vncserver

yum install tigervnc-server

启动 service vncserver start 或者vncserver :1 

关闭:service vncserver stop 或者vncserver -kill :1

修改password:vncpassword

配置:/etc/sysconfig/vncservers 

VNCSERVERS="1:root"


下载novnc 

地址 http://kanaka.github.io/noVNC/

下载到host0中,也就是要访问运行在host0中的novnc代理来访问host1 和host2

启动novnc

launch.sh 6080 --vnc 10.1.81.221:5901 这种启动方式仅能代理访问一台机器

要访问多台,则需要使用配置文件,创建vnc_tokens

内容:

host1: 10.1.81.221:5901

host2: 10.1.81.221:5902


这里5900是vncserver的基数

启动novnc:

[root@localhost noVNC]# utils/websockify --web=./ --target-config vnc_tokens 6080
WebSocket server settings:
  - Listen on :6080
  - Flash security policy server
  - Web server. Web root: /root/git/noVNC
  - No SSL/TLS support (no cert file)
  - proxying from :6080 to targets in /root/git/noVNC/vnc_tokens

--target-config 也可以指定一个目录,然后可以动态将此格式的文件写入这个目录,这样也可行。

使用novnc来登录主机

浏览器打开:

http://10.1.81.224:6080/vnc_auto.html?path=websockify%2f%3ftoken=host1

输入密码即可访问。

这里注意 URL编码,含义是: path=websockify/?token=host1,但是直接输入这个是不行的,需要转码。

另外,发现最新版的novnc不需要转码就可以连接,可直接使用 

http://10.1.81.224:6080/vnc_auto.html?path=websockify/?token=host1


### VNCnoVNC 的功能区别 #### 基本定义与协议支持 VNC 是一种基于 RFB(Remote FrameBuffer)协议的远程桌面工具,允许用户通过网络访问并控制另一台计算机上的图形界面[^1]。noVNC 则是一个纯 HTML5 实现的 VNC 客户端,旨在提供无需安装额外插件即可运行于现代浏览器中的解决方案。 #### 功能差异 - **带宽优化** VNC 提供多种实现方式,其中一些版本如 TightVNC 特别强调节省带宽使用。相比之下,noVNC 虽然也适用于低带宽环境,但由于其依赖 WebSockets 进行通信,在高延迟或不稳定连接下可能表现不如传统 VNC 应用程序。 - **跨平台兼容性** 各种 VNC 变体通常具有良好的跨平台特性;例如 RealVNC 支持 Windows、Linux 和 macOS 平台,而 UltraVNC 主要针对 Windows 用户开发。然而,noVNC 几乎可以在任何具备最新标准浏览器的操作系统上运作,这使其成为移动设备友好型方案的理想选择之一. - **附加特性** - Traditional VNC clients such as UltraVNC offer advanced features like file transfer and full-screen mode support which are not natively available within the scope of a basic NoVNC deployment. - On the other hand,NoVNC integrates seamlessly with web-based environments making it suitable for cloud services where traditional desktop applications might be less convenient or impossible to deploy due to security restrictions imposed by sandboxed browser contexts. ### 使用场景对比 对于需要稳定可靠且功能全面的企业级应用场合(比如远程技术支持),可以选择像RealVNC或者UltraVNC这样的成熟产品因为他们提供了更丰富的特性和更好的性能调优选项;而对于那些希望快速搭建简单易用的Web接口来满足临时性的查看需求的人来说,NoVNC无疑是最简便快捷的选择因为它不需要客户端下载只需打开网页就能立即进入操作状态. ```html <!-- Example usage --> <iframe src="http://yourserver/websockify/?token=example_token"></iframe> ``` 上述代码片段展示了如何嵌入一个 noVNC iframe 来创建简单的远程访问入口点。
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

day walker

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值