什么是noVNC?
-
noVNC 是一個 HTML5 VNC 客戶端,采用 HTML 5 WebSockets, Canvas 和 JavaScript 實現,noVNC 被普遍用在各大雲計算、虛擬機控制面板中,比如 OpenStack Dashboard 和 OpenNebula Sunstone 都用的是 noVNC。
-
noVNC 采用 WebSockets 實現,但是目前大多數 VNC 服務器都不支持 WebSockets,所以 noVNC 是不能直接連接 VNC 服務器的,需要一個代理來做 WebSockets 和 TCP sockets 之間的轉換。這個代理在 noVNC 的目錄里,叫做 websockify 。
實驗環境
-
操作系統:CentOS 6.6
-
IP: 192.168.204.128
一、修改網絡配置
1)關閉防護牆
1
2
|
setenforce 0
service iptables stop
|
2)查看本機IP地址
二、安裝 git
1
|
yum
install
git -y
|
三、安裝配置 tigervnc
1
2
|
yum
install
tigervnc-server
vncserver :1
|
安裝 tigervnc-server 過程:
輸入 vncserver :1 啟動服務,並輸入密碼(注意密碼長度不小於6位)。
四、安裝 noVNC
1)下載 noVNC
1
|
git clone git:
//github
.com
/kanaka/noVNC
|
2)創建安全連接
^注: VNC的默認會話不是安全的,需要創建一個安全的VNC連接。創建完畢的證書 `self.pem` 需要放置到 `noVNC/utils` 目錄下,當啟動 noVNC 時,websockify將自動裝載證書。
1
2
|
cd
.
/noVNC/utils/
openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem
|
一路回車下去 ... ...
3)運行 noVNC
1
2
|
# 在noVNC目錄下,執行
.
/utils/launch
.sh --vnc localhost:5901
|
五、測試連接
在瀏覽器訪問(注意替換成自己的IP地址) http://192.168.204.128:6080/vnc.html
輸入密碼,連接成功!
六、安裝腳本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#!/bin/bash
# stop selinux and iptables
setenforce 0
service iptables stop
# install vncserver and git
yum
install
tigervnc-server git -y
vncserver :1
# 此時會提示輸入密碼
# download noVNC
git clone git:
//github
.com
/kanaka/noVNC
# create secure connection
cd
.
/noVNC/utils/
openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem
# run noVNC
cd
../
.
/utils/launch
.sh --vnc localhost:5901
# running
|