1 環境
1.1 Server端
1)阿里雲ECS服務器,系統爲Centos7.4
1.2 Client端
1)自有筆記本,系統爲windows10 LTSC2019
2 Server端配置
2.1 下載腳本文件
運行命令:
wget http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/41181/cn_zh/1504062842088/install_vnc_server.sh
2.2 執行安裝腳本
以root身份執行腳本 bash install_vnc_server.sh
說明:安裝需要較長的時間。當屏幕上出現以下信息時,表示VNC Server安裝完成。您需要記錄顯示的隨機密碼(b136f1)。
注:如果腳本執行報錯可以多嘗試幾次。
2.3 查看端口
運行以下命令,在返回結果中查看Xvnc服務正在使用的端口。
netstat -tulnp
在上圖中,表示VNC Server正在使用的端口爲TCP 5901和6001,其中:
TCP 5901:允許VNC客戶端通過RFB協議連接VNC Server。使用VNC Viewer連接實例時選擇這個端口。
TCP 6001:允許Windows X連接VNC Server。
2.4 放開端口限制
開放指定端口:
- 開放5901和6001
firewall-cmd --zone=public --add-port=80/tcp --permanent
- 重啓防火牆
systemctl restart firewalld.service
或者你也可以選擇直接關閉防火牆:
- 查看當前防火牆狀態
firewall-cmd --state
- 關閉防火牆
systemctl stop firewalld.service
2.5 添加安全組規則
在本示例中需要添加2條安全組規則,放行Xnvc服務需要的TCP 5901和TCP 6001端口。
詳細操作請見:添加安全組規則
2.6 noVNC安裝與配置
- noVNC需要系統已經安裝過圖形界面,不然會出現無法連接服務器,若當前系統沒有圖形界面,運行此命令開始安裝:
yum groupinstall "GNOME Desktop" "Graphical Administration Tools" -y
- 需要使用git下載novnc,若沒有git請執行
yum install git
- 下載novnc
git clone git://github.com/kanaka/noVNC
- 進入utils目錄
cd ./noVNC/utils/
- 創建安全連接(一路回車就行)
openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem
注: VNC的默認會話不是安全的,需要創建一個安全的VNC連接。創建完畢的證書 self.pem 需要放置到 noVNC/utils 目錄下,當啓動 noVNC 時,websockify將自動裝載證書。
- 返回novnc目錄
cd ..
- 執行啓動
./utils/launch.sh --vnc localhost:5901
- 建議將localhost改爲雲服務器的公網地址
- 啓動noVNC時,可以通過添加 --listen 命令來指定noVNC監聽的端口,例如 ./utils/launch.sh --vnc localhost:5901 --listen 6890 的作用爲:啓動noVNC,監聽6890端口,並連接到 localhost:5901上的vncServer服務
2.7 登陸並使用
- 在win10的chrome瀏覽器中輸入地址,ip替換爲雲服務器的公網地址:http://ip:6080/vnc.html?host=ip&port=6080
- 輸入前邊記下的密碼(b136f1)即可連接。