1. 程式人生 > >xrdp完美實現Windows遠端訪問Ubuntu 16.04

xrdp完美實現Windows遠端訪問Ubuntu 16.04

前言:

  在很多場景下,我們需要遠端連線到Linux伺服器(本文是Ubuntu),傳統的連線主要分為兩種。

  第一種:通過SSH服務(使用xshell等工具)來遠端訪問,編寫終端命令,不過這個是無介面的,很多人也喜歡這種方式,因為快(xian)捷(de)方(niu)便(bi)。

  第二種:通過視覺化介面遠端訪問,像Windows下的自帶的遠端工具一樣,能夠以圖形化的介面遠端操作(很多人還是因為習慣問題,喜歡這種方式,畢竟有介面顯示還是賞心悅目的)。

  本文主要是介紹第二種方式。最常見的是通過xrdp和vnc這兩種遠端桌面協議來進行視覺化遠端操作

一、介紹xrdp和vnc之間區別

  通過一張表格來展示xdrp和vnc的主要區別

xrdp vnc
BIOS螢幕顯示 不能
全綵支援
更改解析度
多顯示器 只有一個螢幕 多顯示器支援
影象傳輸 影象傳輸 影象和圖形傳輸
視訊播放支援 不能 GPU加速支援
音訊傳輸 不能 雙向語音可以控制
滑鼠控制 伺服器端控制 伺服器端控制
USB傳輸  不能 USB可以通過網路傳輸

  1、xrdp

  rdp有兩種,remote,remotefx
  適用系統:windows、linux
  網路流量:較小,正常使用100-200k左右
  適用場景:由於在色彩、音訊、usb及本地磁碟對映方面較好,非常適用於虛擬桌面

  2、vnc

  適用系統:windows、linux
  網路流量:較小,常用100k左右
  適用場景:主要用於linux的伺服器的管理,由於無聲音和usb傳輸,不滿足於虛擬桌面的使用

  備註:vnc是大部分Linux發行版預設的基於RFB協議的遠端桌面程式,但對於普通使用者來說,vnc的使用者體驗並不好,比較慢,還需要安裝客戶端。個人推薦使用xrdp,並且Windows的遠端桌面也是基於RDP協議,相容性也很好。並且vnc只支援一個桌面,xrdp可以支援多個桌面,所有如果存在多人同時連線Linux的話,xrdp完全是可以支援的,vnc則不行

二、如何通過XDRP實現Windows遠端訪問

  下面才是本文的重點,本文主要是講xrdp在目前最新版Ubuntu 16.04下,如果實現Windows遠端訪問。網上也很多相關教程,但是都需要安裝xfac4或者xubuntu桌面系統才能實現遠端連線。那是因為xrdp支援在13.10之後版本就已經不支援的Gnome了和原生Unity桌面,所以網上很多方法都是安裝能夠被xdrp支援的第三方xfac4或者xubuntu桌面系統,類似“曲線救國”的方式,間距達到遠端控制Ubuntu。但是相信大多數人還是蠻喜歡Ubuntu的原生介面,不太喜歡其他第三方的桌面系統,那可能有人會問,就沒有什麼辦法支援原生的Unity桌面嗎?答案其實是有的,這就是本文要講到的如何通過xrdp支援原生Ubuntu桌面遠端訪問。

  我們先來看看大多數情況下,通過安裝第三方xfac4或者xubuntu桌面系統達到遠端訪問的功能的,這裡簡單說明下,畢竟這不是本文的重點(ヾ(◍°∇°◍)ノ゙)。通過以下命令直接安裝,然後通過Windows自帶的遠端訪問工具就可以直接訪問了。

複製程式碼
 1  #安裝xrdp 
 2  sudo apt-get install xrdp 
 3  #安裝vnc4server 
 4  sudo apt-get install vnc4server tightvncserver
 5  #安裝xubuntu-desktop 
 6  sudo apt-get install xubuntu-desktop 
 7  #向xsession中寫入xfce4-session 
 8  echo “xfce4-session” >~/.xsession 
 9  #開啟xrdp服務 
10  sudo service xrdp restart
複製程式碼

  上面是網上大多數示例所展示的,都是依靠第三方桌面系統實現遠端訪問,下面講解的是如何直接訪問原生系統。

步驟一、下載TigerVNC Server軟體包

步驟二、 安裝TigerVNC Server軟體包

  1、開啟終端,進入到剛剛你你下載TigerVNC Server的存放目錄,我是直接下載到預設的DownLoads下的,因為下載的是zip檔案,記得解壓出來,得到deb安裝檔案。

cd Downloads

  如圖所示:

  2、再輸入一下安裝命令進行安裝(需要su密碼)

sudo dpkg -i tigervncserver_1.6.80-4_amd64.deb
或者
sudo apt-get install tightvncserver (使用線上安裝,後面第3小步就可以直接跳過了)

如圖所示:可能你會看到一些警告資訊和錯誤資訊,暫時忽略這些資訊,主要是沒有相對應的依賴包。

  3、上面才錯誤資訊是因為沒有安裝對應的依賴,我們可以通過下面命令進行安裝,再重複第2個的命令

sudo apt-get install -f

  如圖所示:

步驟三、安裝xrdp

  開啟終端,輸入一下命令(需要su密碼)

sudo apt-get install xrdp -y

步驟四、配置xrdp設定

  需要通過xrdp連線到桌面,需要正確配置相關資訊並填充到.xsession檔案(針對每個使用者)或/etc/startwm.sh(針對所有使用者),輸入如下命令

echo unity>~/.xsession

或者

sudo sed -i.bak '/fi/a #xrdp multi-users \n unity \n' /etc/xrdp/startwm.sh

步驟五、重啟xrdp 

sudo service xrdp restart

 步驟六、開啟桌面共享功能

  進入系統-》首選項-》桌面共享,或者直接搜尋桌面共享,如圖所示

  將【允許其他人檢視您的桌面】這一項勾上,如圖所示:

到這一步基本上已經完成了,接下來就是來測試是否能正常連線到Ubuntu了

三、xrdp測試連線到Ubuntu

  1、檢視Ubuntu伺服器的IP地址,如圖所示:

  2、啟動Windows遠端桌面工具(mstc),輸入Ubuntu的IP地址(192.168.226.131),如圖所示:

  3、點選連線之後,正常情況會自動跳出xrdp的登入介面,需要我們輸入使用者名稱和密碼即可,模式選擇預設就行,如圖所示:

   4、我們可以看到xrdp的實時日誌,如圖所示:

  5、最終我們連線到上了Ubuntu,是不是很熟悉的介面~~(ヾ(๑╹◡╹)ノ”)

  至此,xrdp連線Ubuntu 16.04的所有步驟已完成

2018年3月21日增加:
windows遠端記錄的修改方法
這裡寫圖片描述

這裡寫圖片描述