新聞中心
本指南介紹了在 ubuntu 18.04 系統(tǒng)上安裝和配置 VNC 服務器所需的步驟。我們還將向您展示如何通過 SSH 隧道安全地連接到 VNC 服務器。

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:域名與空間、虛擬空間、營銷軟件、網(wǎng)站建設、大足網(wǎng)站維護、網(wǎng)站推廣。
虛擬網(wǎng)絡計算(VNC)是一種圖形桌面共享系統(tǒng),允許您使用鍵盤和鼠標遠程控制另一臺計算機。
先決條件
安裝桌面環(huán)境
大多數(shù)服務器沒有安裝桌面環(huán)境,因此我們首先要安裝輕量級桌面環(huán)境。
首先使用以下命令更新系統(tǒng)
sudo apt update sudo apt upgrade
然后,鍵入以下命令以在服務器上安裝 Xfce :
sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
根據(jù)您的系統(tǒng),下載和安裝 Xfce 軟件包可能需要一些時間。
安裝 VNC 服務器
Ubuntu 存儲庫中還有幾種不同的 VNC 服務器,如 TightVNC , TigerVNC 和 x11vnc 。每個 VNC 服務器在速度和安全性方面都有不同的優(yōu)點和缺點。
我們將安裝 TigerVNC ,它是高性能 VNC 服務器,并被積積極維護。
鍵入以下命令以在 Ubuntu 服務器上安裝 TigerVNC :
sudo apt install tigervnc-standalone-server tigervnc-common
現(xiàn)在安裝了 VNC 服務器,下一步是運行 vncserver 命令,該命令將創(chuàng)建初始配置并設置密碼。運行以下命令時不要使用 sudo :
vncserver
系統(tǒng)將提示您輸入并確認密碼,以及是否將其設置為僅查看密碼。如果您選擇設置僅查看密碼,則用戶將無法使用鼠標和鍵盤與 VNC 實例進行交互。
You will require a password to access your desktops. Password: Verify: Would you like to enter a view-only password (y/n)? n /usr/bin/xauth: file /home/buzheng/.Xauthority does not exist New 'server2.buzheng.org:1 (buzheng)' desktop at :1 on machine server2.buzheng.org Starting applications specified in /etc/X11/Xvnc-session Log file is /home/buzheng/.vnc/server2.buzheng.org:1.log Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/buzheng/.vnc/passwd :1 to connect to the VNC server.
第一次 vncserver 運行命令時,它將創(chuàng)建密碼文件并將其存儲在 ~/.vnc 目錄中,如果不存在,將創(chuàng)建該目錄。
注意上面輸出中主機名之后的 :1 。這表示運行 vnc 服務器的顯示端口號。在我們的例子中,服務器在 TCP 端口 5901 (5900 + 1)上運行。如果您創(chuàng)建第二個實例, vncserver 它將在下一個空閑端口上運行,即 :2 這意味著服務器正在端口 5902 (5900 + 2)上運行。
重要的是要記住,當使用 VNC 服務器時, :X 是一個引用的顯示端口 5900+X 。
在繼續(xù)下一步之前,首先使用帶有 -kill 選項和服務器編號作為參數(shù)的 vncserver 命令停止 VNC 實例。在我們的例子中,服務器在端口 5901 (:1)中運行,因此我們將使用以下命令停止它:
vncserver -kill :1
Killing Xtigervnc process ID 7264... success!
配置 VNC 服務器
現(xiàn)在我們已經(jīng)在服務器上安裝了 Xfce 和 TigerVNC ,我們需要配置 TigerVNC 來使用 Xfce 。為此,請創(chuàng)建以下文件 ?/.vnc/xstartup:
nano ~/.vnc/xstartup
#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4
保存并關閉文件。無論何時啟動或重啟 TigerVNC 服務器,都將自動執(zhí)行上述命令。
~/.vnc/xstartup 文件還需要具有執(zhí)行權限。運行以下命令以確保權限正確:
chmod u+x ~/.vnc/xstartup
如果需要將附加選項傳遞給 VNC 服務器,則可以創(chuàng)建一個名為 config 的文件,并為每行添加一個選項。這是一個例子:
文件 ~/.vnc/config
geometry=1920x1084 dpi=96
創(chuàng)建 Systemd 單元文件
我們將創(chuàng)建一個 systemd 單元文件,使我們能夠根據(jù)需要輕松啟動,停止和重新啟動 VNC 服務,與任何其他 systemd 服務相同。
打開文本編輯器,將以下配置復制并粘貼到其中。請務必更改第 7 行中的用戶名以匹配您的用戶名。
sudo nano /etc/systemd/system/vncserver@.service
[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=simple User=buzheng PAMName=login PIDFile=/home/%u/.vnc/%H%i.pid ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :%i > /dev/null 2>&1 || :' ExecStart=/usr/bin/vncserver :%i -geometry 1440x900 -alwaysshared -fg ExecStop=/usr/bin/vncserver -kill :%i [Install] WantedBy=multi-user.target
保存并關閉文件。
通知 systemd 我們創(chuàng)建了一個新的單元文件:
sudo systemctl daemon-reload
下一步是使用以下命令啟用單元文件:
sudo systemctl enable vncserver@1.service
符號 1 后面的數(shù)字 @ 定義了運行 VNC 服務的顯示端口。這意味著 VNC 服務器將偵聽端口 5901 ,正如我們在上一節(jié)中討論的那樣。
執(zhí)行以下命令啟動 VNC 服務:
sudo systemctl start vncserver@1.service
驗證服務是否已成功啟動:
sudo systemctl status vncserver@1.service
● vncserver@1.service - Remote desktop service (VNC)
Loaded: loaded (/etc/systemd/system/vncserver@.service; indirect; vendor preset: enabled)
Active: active (running) since Thu 2018-08-16 19:05:54 UTC; 4s ago
Process: 9893 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill :1 > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
Main PID: 9900 (vncserver)
Tasks: 0 (limit: 507)
CGroup: /system.slice/system-vncserver.slice/vncserver@1.service
? 9900 /usr/bin/perl /usr/bin/vncserver :1 -geometry 1440x900 -alwaysshared -fg
連接到 VNC 服務器
VNC 不是加密協(xié)議,可以進行數(shù)據(jù)包嗅探。建議的方法是創(chuàng)建一個 SSH 隧道,該隧道將安全地將來自本地計算機的端口 5901 上的流量轉(zhuǎn)發(fā)到同一端口上的服務器。
在 Linux 和 macOS 上設置 SSH 隧道
如果在計算機上運行 Linux , macOS 或任何其他基于 Unix 的操作系統(tǒng),則可以使用以下命令輕松創(chuàng)建 SSH 隧道:
ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address
系統(tǒng)將提示您輸入用戶密碼。
不要忘了更換 username ,并 server_ip_address 與您的用戶名和服務器的 IP 地址。
在 Windows 上設置 SSH 隧道
如果運行 Windows ,則可以使用 PuTTY SSH 客戶端設置 SSH 隧道。
打開 Putty 并在 Host name or IP address 字段中輸入您的服務器 IP 地址。
在 Connection 菜單框下,展開 SSH 并選擇 Tunnels 。輸入 VNC 服務器端口(5901 在) Source Port 字段,并輸入 server_ip_address:5901 在 Destination 現(xiàn)場和點擊 Add 如下圖所示的圖像按鈕:
返回 Session 頁面以保存設置,這樣您每次都不需要輸入它們。現(xiàn)在,您只需選擇已保存的會話并通過單擊 Open 按鈕登錄到遠程服務器。
使用 Vncviewer 連接
現(xiàn)在您已經(jīng)設置了 SSH 隧道,現(xiàn)在可以打開 Vncviewer 并連接到 VNC 服務器了 localhost:5901 。
您可以使用任何 VNC 查看器,如 TigerVNC , TightVNC , RealVNC , UltraVNC Vinagre 和 VNC Viewer for Google Chrome 。
在這個例子中,我們將使用 TigerVNC 。打開 VNC 查看器,輸入 localhost:5901 并單擊 Connect 按鈕。
出現(xiàn)提示時輸入密碼,您應該會看到默認的 Xfce 桌面。它應該看起來像這樣:
您可以使用鍵盤和鼠標從本地計算機開始與遠程 XFCE 桌面交互。
結論
到目前為止,您應該已經(jīng)啟動并運行 VNC 服務器,并且可以使用易于使用的圖形界面從本地桌面計算機輕松管理 Ubuntu 18.04 服務器。
要配置 VNC 服務器以啟動多個用戶的顯示,請使用該 vncserver 命令創(chuàng)建初始配置并設置密碼。您還需要使用其他端口創(chuàng)建新的服務文件。
如果您有任何問題,請隨時發(fā)表評論。
文章標題:如何在Ubuntu18.04上安裝和配置VNC
文章URL:http://www.dlmjj.cn/article/cdpogcd.html


咨詢
建站咨詢
