新聞中心
VNC是在基于UNIX和Linux操作系統(tǒng)的免費(fèi)的開放源的連接系統(tǒng),能讓使用者用鍵盤和鼠標(biāo)遠(yuǎn)程服務(wù)器上的圖形桌面環(huán)境進(jìn)行交互。

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括沈河網(wǎng)站建設(shè)、沈河網(wǎng)站制作、沈河網(wǎng)頁制作以及沈河網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,沈河網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到沈河省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
要完成本教程,您需要:
-
一臺已經(jīng)設(shè)置好可以使用
sudo命令的非root賬號的Ubuntu服務(wù)器,并且已開啟防火墻。 -
安裝了VNC客戶端的本地計(jì)算機(jī),支持通過SSH隧道的VNC連接。
-
在Winows上,您可以使用TightVNC,RealVNC或UltraVNC。
-
在macOS上,您可以使用內(nèi)置的屏幕共享程序,也可以使用RealVNC等跨平臺應(yīng)用程序。
-
在Linux上,你可以從很多選項(xiàng),包括選擇?
vinagre,krdc,RealVNC,或TightVNC的。
-
步驟1 – 安裝桌面環(huán)境和VNC服務(wù)器
默認(rèn)情況下,Ubuntu 18.04服務(wù)器沒有安裝圖形桌面環(huán)境或VNC服務(wù)器,所以我們首先安裝它們。具體來說,我們將為最新的Xfce桌面環(huán)境和官方Ubuntu存儲庫中提供的TightVNC軟件包安裝軟件包。
在您的服務(wù)器上,更新您的包列表:
?sudo apt update現(xiàn)在在您的服務(wù)器上安裝Xfce桌面環(huán)境:
?sudo apt install xfce4 xfce4-goodies安裝完成后,安裝TightVNC服務(wù)器:
?sudo apt install tightvncserver要在安裝后完成VNC服務(wù)器的初始配置,請使用該vncserver命令設(shè)置安全密碼并創(chuàng)建初始配置文件:
?vncserver系統(tǒng)將提示您輸入并驗(yàn)證密碼以遠(yuǎn)程訪問您的計(jì)算機(jī):
?You will require a password to access your desktops.
??
?Password:
?Verify:密碼長度必須介于六到八個字符之間。超過8個字符的密碼將自動截?cái)唷?/p>
驗(yàn)證密碼后,您可以選擇創(chuàng)建僅查看密碼。使用僅查看密碼登錄的用戶將無法使用鼠標(biāo)或鍵盤控制VNC實(shí)例。如果您想使用VNC服務(wù)器向其他人演示內(nèi)容,這是一個有用的選項(xiàng),但這不是必需的。
然后,該過程為服務(wù)器創(chuàng)建必要的默認(rèn)配置文件和連接信息:
?Would you like to enter a view-only password (y/n)? n
?xauth: ?file /home/sammy/.Xauthority does not exist
??
?New 'X' desktop is your_hostname:1
??
?Creating default startup script /home/sammy/.vnc/xstartup
?Starting applications specified in /home/sammy/.vnc/xstartup
?Log file is /home/sammy/.vnc/your_hostname:1.log現(xiàn)在讓我們配置VNC服務(wù)器。
第2步 – 配置VNC服務(wù)器
VNC服務(wù)器需要知道啟動時(shí)要執(zhí)行的命令。具體來說,VNC需要知道它應(yīng)該連接到哪個圖形桌面。
這些命令位于主目錄下xstartup的.vnc文件夾中調(diào)用的配置文件中。啟動腳本是vncserver在上一步中運(yùn)行時(shí)創(chuàng)建的,但我們將創(chuàng)建自己的腳本以啟動Xfce桌面。
首次設(shè)置VNC時(shí),它會在端口5901上啟動默認(rèn)服務(wù)器實(shí)例。該端口稱為顯示端口,由VNC稱為:1。VNC可以在其他顯示端口上啟動多個實(shí)例,例如:2,:3等等。
因?yàn)槲覀儗⒁腣NC服務(wù)器的配置方式,所以首先5901使用以下命令停止在端口上運(yùn)行的VNC服務(wù)器實(shí)例:
?vncserver -kill :1輸出應(yīng)該如下所示,盡管您會看到不同的PID:
?Killing Xtightvnc process ID 17648在修改xstartup文件之前,請備份原始文件:
?mv ~/.vnc/xstartup ~/.vnc/xstartup.bak現(xiàn)在創(chuàng)建一個新xstartup文件并在文本編輯器中打開它:
?nano ~/.vnc/xstartup無論何時(shí)啟動或重新啟動VNC服務(wù)器,都會自動執(zhí)行此文件中的命令。如果尚未啟動,我們需要VNC啟動我們的桌面環(huán)境。將這些命令添加到文件中:
?#!/bin/bash
?xrdb $HOME/.Xresources
?startxfce4 &文件中的第一個命令xrdb $HOME/.Xresources告訴VNC的GUI框架讀取服務(wù)器用戶的.Xresources文件。用戶可以在.Xresources其中更改圖形桌面的某些設(shè)置,如終端顏色,光標(biāo)主題和字體渲染。第二個命令告訴服務(wù)器啟動Xfce,在這里您可以找到舒適地管理服務(wù)器所需的所有圖形軟件。
為確保VNC服務(wù)器能夠正確使用此新啟動文件,我們需要使其可執(zhí)行。
?sudo chmod +x ~/.vnc/xstartup現(xiàn)在,重新啟動VNC服務(wù)器。
?vncserver您將看到類似于此的輸出:
?New 'X' desktop is your_hostname:1
??
?Starting applications specified in /home/sammy/.vnc/xstartup
?Log file is /home/sammy/.vnc/your_hostname:1.log配置到位后,讓我們從本地計(jì)算機(jī)連接到服務(wù)器。
第3步 – 安全地連接VNC桌面
連接時(shí)VNC本身不使用安全協(xié)議。我們將使用SSH隧道安全地連接到我們的服務(wù)器,然后告訴我們的VNC客戶端使用該隧道而不是直接連接。
在本地計(jì)算機(jī)上創(chuàng)建SSH連接,以便安全地轉(zhuǎn)發(fā)到localhostVNC連接。您可以使用以下命令通過Linux或macOS上的終端執(zhí)行此操作:
?ssh -L 5901:127.0.0.1:5901 -C -N -l sammy your_server_ip該-L開關(guān)指定的端口綁定。在這種情況下,我們將5901遠(yuǎn)程連接的端口5901綁定到本地計(jì)算機(jī)上的端口。該-C開關(guān)啟用壓縮,而-N開關(guān)告訴ssh我們不希望執(zhí)行遠(yuǎn)程命令。該-l開關(guān)指定遠(yuǎn)程登錄名。
記得替換sammy,并your_server_ip與您的服務(wù)器的須藤非root用戶名和IP地址。
如果您使用的是圖形化SSH客戶端(如PuTTY),請將your_server_ip用作連接IP,并在程序的SSH隧道設(shè)置中設(shè)置localhost:5901為新的轉(zhuǎn)發(fā)端口。
隧道運(yùn)行后,使用VNC客戶端進(jìn)行連接localhost:5901。系統(tǒng)將提示您使用在步驟1中設(shè)置的密碼進(jìn)行身份驗(yàn)證。
連接后,您將看到默認(rèn)的Xfce桌面。它應(yīng)該看起來像這樣:
您可以使用文件管理器或命令行訪問主目錄中的文件,如下所示:
按下CTRL+C終端以停止SSH隧道并返回到您的提示。這也將斷開您的VNC會話。
接下來讓我們將VNC服務(wù)器設(shè)置為服務(wù)。
步驟4 – 將VNC作為系統(tǒng)服務(wù)運(yùn)行
接下來,我們將VNC服務(wù)器設(shè)置為systemd服務(wù),以便我們可以根據(jù)需要啟動,停止和重新啟動它,就像任何其他服務(wù)一樣。這還將確保在服務(wù)器重新啟動時(shí)VNC啟動。
首先,使用您喜歡的文本編輯器創(chuàng)建一個新的/etc/systemd/system/vncserver@.service單元文件:
?sudo nano /etc/systemd/system/vncserver@.service@名稱末尾的符號將讓我們傳入一個我們可以在服務(wù)配置中使用的參數(shù)。我們將使用它來指定我們在管理服務(wù)時(shí)要使用的VNC顯示端口。
將以下行添加到該文件中。請務(wù)必更改用戶,組,WorkingDirectory的值以及PIDFILE值中的用戶名以匹配您的用戶名:
?[Unit]
?Description=Start TightVNC server at startup
?After=syslog.target network.target
??
?[Service]
?Type=forking
?User=sammy
?Group=sammy
?WorkingDirectory=/home/sammy
??
?PIDFile=/home/sammy/.vnc/%H:%i.pid
?ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
?ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :%i
?ExecStop=/usr/bin/vncserver -kill :%i
??
?[Install]
?WantedBy=multi-user.target如果VNC已經(jīng)運(yùn)行,該ExecStartPre命令將停止。該ExecStart命令啟動VNC并將顏色深度設(shè)置為24位顏色,分辨率為1280×800。您也可以修改這些啟動選項(xiàng)以滿足您的需求。
保存并關(guān)閉文件。
接下來,讓系統(tǒng)知道新的單元文件。
?sudo systemctl daemon-reload啟用單元文件。
?sudo systemctl enable vncserver@1.service在1以下的@符號表示,其顯示編號的服務(wù)應(yīng)該出現(xiàn)過,在這種情況下,默認(rèn):1為在步驟2中進(jìn)行了討論..
如果VNC服務(wù)器仍然在運(yùn)行,請停止它的當(dāng)前實(shí)例。
?vncserver -kill :1然后啟動它,就像啟動任何其他systemd服務(wù)一樣。
?sudo systemctl start vncserver@1您可以使用此命令驗(yàn)證它是否已啟動:
?sudo systemctl status vncserver@1如果它正確啟動,輸出應(yīng)如下所示:
?● vncserver@1.service - Start TightVNC server at startup
? ? Loaded: loaded (/etc/systemd/system/vncserver@.service; indirect; vendor preset: enabled)
? ? Active: active (running) since Mon 2018-07-09 18:13:53 UTC; 2min 14s ago
? ?Process: 22322 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :1 (code=exited, status=0/SUCCESS)
? ?Process: 22316 ExecStartPre=/usr/bin/vncserver -kill :1 > /dev/null 2>&1 (code=exited, status=0/SUCCESS)
? Main PID: 22330 (Xtightvnc)
??
?...重新啟動計(jì)算機(jī)后,您的VNC服務(wù)器現(xiàn)在可用。
再次啟動SSH隧道:
?ssh -L 5901:127.0.0.1:5901 -C -N -l sammy your_server_ip然后使用VNC客戶端軟件建立新連接localhost:5901以連接到您的計(jì)算機(jī)。
結(jié)論
如果按照教程安裝結(jié)束后就可以在Ubuntu 18.04服務(wù)器上啟動并運(yùn)行安全的VNC服務(wù)器。
本文題目:在 Ubuntu 18.04 上安裝和配置 VNC
URL鏈接:http://www.5511xx.com/article/dhhiieh.html


咨詢
建站咨詢
