返回部落格

如何在 Ubuntu 18.04 上安裝與設定 VNC

如何在 Ubuntu 18.04 上安裝與設定 VNC

VNC (Virtual Network Computing) 允許您像使用電腦一樣使用伺服器 - 具有圖形使用者介面 (GUI)、桌面以及您的滑鼠和鍵盤。它讓剛開始在伺服器上工作的使用者更容易進行運算。

CloudSigma 允許您在建立伺服器後直接存取 VNC。除此之外,在本教學中,您將在 Ubuntu 18.04 上設定 VNC 伺服器,並使用安全通道連接到它。在本教學中,您將使用 TigerVNC,這是一個輕量且快速的 VNC 伺服器套件。即使在慢速網路下,它也能提供流暢的體驗。

先決條件

首先,您必須建立一台機器。您可以在 CloudSigma WebApp 的運算(compute)區域中輕鬆完成此操作:
Create a Linux Server setup java VNC

在本教學中,您可以使用以下資源:
CPU: 8 GHz
RAM: 8 GB
SSD: 50 GB

您可以使用掛載磁碟 Ubuntu 18.04 LTS 映像檔,可在 CloudSigma 的映像檔庫中取得:
Ubuntu 18.04:預裝 64 位元,含 VirtIO 驅動程式、超級使用者、Python 2.7.17、Pip 20.0.2、OpenSSL 1.1.1d、Cloud-init 以及截至 2019-03-03 的最新更新。

啟動機器後,您可以透過執行以下指令來更新機器上所有現有的套件庫和套件:

CloudSigma VNC 功能

CloudSigma 為您提供了一種透過 VNC 存取機器的簡單方法。

vnc tunnel

您可以點擊 VNC Tunnel’s 的切換按鈕來啟用它。完成此操作後,您將看到此畫面。

vnc link

如果您已附加 SSH 金鑰,則必須存取伺服器並使用以下指令變更密碼:

如果您未附加 SSH 金鑰,可以跳過上述步驟。您可以在安裝說明(Install Notes)中找到密碼。

 

您可以點擊 ‘Display VNC’ 在瀏覽器中開啟 VNC 視窗,或點擊 ‘Display VNC URL’ 查看連接到 VNC 用戶端所需的詳細資訊。當您點擊 ‘Display VNC’ 時,系統會開啟一個新分頁並要求您輸入憑證。您可以使用與透過 VNC 用戶端使用虛擬機器(VM)相同的方式來使用它。

open vnc in browser

現在我們將介紹在伺服器上安裝 VNC 的另一種方法。

安裝 VNC 伺服器

Ubuntu 映像檔預設不包含 GUI 套件。我們將安裝最新 XFCE 桌面環境的套件以及 Ubuntu 套件庫中提供的 TigerVNC 套件。

您可以使用以下指令安裝 XFCE 套件:

sudo apt install xfce4 xfce4-goodies

安裝 XFCE 套件後,您可以使用以下指令安裝 TigerVNC 伺服器:

要完成設定,請執行以下指令並為 VNC 連線設定密碼:

執行上述指令時,系統會提示您是否要使用僅限檢視(view-only)的密碼登入。使用僅限檢視的密碼,您只能看到螢幕但無法使用系統。如果您希望其他人能夠看到螢幕但無法操作,此選項將非常有用。

接下來,該指令將建立所有必要的設定。在此階段,您可以從遠端系統或您的電腦使用 VNC 伺服器。作為本教學的一部分,我們將在開始使用伺服器之前對其進行進一步的設定。

設定 VNC 伺服器

在本節中,我們將向您展示如何設定要使用的偏好桌面。 

您需要在使用者家目錄中 .vnc 資料夾下名為 ‘xstartup’ 的檔案中設定這些指令。當您第一次執行 vncserver 指令時,已建立了啟動指令碼。您將建立另一個指令碼來啟動 XFCE 桌面。

此外,當您第一次執行 vncserver 指令時,它會啟動一個連接埠為 5901 的預設伺服器執行個體。此連接埠稱為顯示埠(display port),在 VNC 中被稱為 “:1”。如果您重新執行該指令,VNC 將在其他連接埠上建立另一個執行個體 “:2”,依此類推。

由於您將配置 VNC 伺服器,請停止已在運行的執行個體:

在修改啟動檔案之前,請先備份原始檔案:

現在,您可以使用 vim 編輯器編輯原始檔案,並將其內容替換為以下內容:

每當您啟動或重新啟動 vncserver 時,該程序都會執行此檔案中的指令。如果桌面環境尚未啟動,這些指令將會啟動它。

第一個指令,“xrdb $HOME/.Xresources” 會告知 GUI 框架從此位置讀取配置。您可以配置桌面的各種設定,例如終端機顏色、游標主題等。第二個指令則會啟動 XFCE。

為了確保 VNC 伺服器可以執行該檔案,您需要變更其權限:

變更權限後,現在您可以執行 VNC 伺服器:

Start VNC Server

現在伺服器已準備就緒,我們可以從電腦連接到它。

為 VNC 連線建立安全通道

由於 VNC 在連線時不使用安全協定,我們將使用 SSH 來建立安全連線。我們可以使用 SSH 安全通道來連接到我們的虛擬桌面。

若要建立安全地將連線轉發到 localhost 的 SSH 通道,您可以在終端機或 PowerShell(適用於 Windows)上使用以下指令:

在上述指令中,

-L:用於指定連接埠繫結。在此情況下,我們將伺服器的 5901 連接埠轉發到我們系統的 5901 連接埠

-C:用於啟用壓縮

-N:用於指定不需要遠端執行指令

-l:指定遠端登入名稱

-i:指定金鑰的位置

Creating SSH Tunnel

通道運行後,使用 VNC 用戶端連接到 localhost:5901。它會要求您輸入先前設定的密碼。

連線後,您將看到類似此畫面的螢幕。

Connecting to Remote Desktop

您可以透過按 Ctrl + C 來停止 SSH 通道。

將 VNC 作為系統服務執行

您現在可以將 VNC 設定為系統服務,以便使用 systemd 指令來啟動、重新啟動或檢查其狀態。這也將確保 VNC 伺服器在伺服器重新開機時自動啟動。

為此,請建立一個新的單元檔案 – /etc/systemd/system/vncserver@.service。

您會注意到在上述檔名中,有一個 ‘@’ 符號。它允許您傳遞一個可用於伺服器配置的引數。

在檔案中新增以下內容:

‘ExecStartPre’ 指令會在 VNC 已在運行時將其停止,而 ExecStart 指令則會以 24 位元色彩深度和 1280×800 的解析度啟動 VNC。您可以根據需要修改此檔案。

現在,您可以使用以下命令重新載入 systemd 的單元:

現在 systemctl 已經知道新的單元,您可以使用以下命令啟用它:

@ 後面的數字 1 表示該服務應顯示在哪個顯示器編號上。例如::1、:2 等。

要停止目前的執行個體,請執行以下命令:

Enabling Service

現在您可以像啟動任何其他服務一樣啟動 VNC 伺服器。

要檢查服務是否已啟動,請執行以下命令:

重新啟動伺服器後,便可使用 VNC 伺服器。

現在您已經知道如何設定 VNC 伺服器,您可以輕鬆管理您的伺服器,就像管理您的電腦一樣。

author

Akshay Nagpal

作者 · CloudSigma

Preslav Dobrev 是 CloudSigma 的創意設計師,專注於透過傳統與創新行銷渠道建立一致的企業形象。他擅長將藝術願景與策略行銷相融合,創造具有影響力的品牌敘事。

留言

目前尚無留言。成為第一個留言的人吧。