Introduction

Ubuntu上的遠端鏈接比起windows系統自帶的Remote Desktop需要配置的條件更多。網上也有許多不同的版本,本人嘗試之後發現了一些常見的問題,特在此總結可行的一般流程與常見問題的解決方式。

System Config

Ubuntu16.04 Windows 10

Steps

1、如果需要從Ubuntu連接到Windows系統,則可以安裝Desktop

  • sudo apt-get install ubuntu-desktop

2、若只是從Windows鏈接到Ubuntu則跳過第一步,確保Ubuntu系統安裝了vnc服務,大部分系統會自行安裝,可以通過重複安裝確認。

  • sudo apt-get install vnc4server(大部分只支持tightvncserver,建议选择后者)
  • sudo apt-get install tightvncserver

3、安裝遠端桌面軟體xrdp

  • sudo apt-get install xrdp

    • 此時若打開xrdp的配置文件,可以看到默認的xrdp協定,遠 端桌面則是根據這個來請求遠端服務的。
  • sudo vim /etc/xrdp/xrdp.ini
  • 其中port = -1表示默認port(5910)作為登錄的接口,之後的連接可通過這個port連入相同的session(因為遠端連接的port一般可以兼容port5900到5910)如果需要更改連接的port可以在xrdp.ini文檔中修改port為port = ask59XX來請求連接。

修改完畢後記得重啟xrdp:

  • sudo service xrdp restart

4、此時可以查看service port看是否處於LISTEN的狀態。

  • netstat -utl

Important : 必須確保三個port處於監聽狀態

  • port 3389
  • port 3350
  • port 59XX

5、由於xrdp會開放3389的port作為遠端圖形化界面的窗口,因此還需要有相應的圖形化桌面套件。
Ubuntu常用的桌面套件有三種,選擇一種安裝即可

  • 安裝與設定Xfce
    • sudo apt install xfce4
    • echo “xfce4-session” > ~/.xsession
  • 安裝與設定Lxde
    • sudo apt install lxde
    • echo “lxsession -s LXDE -e LXDE” > ~/.xession
  • 安裝與設定Mate
    • sudo apt-add-repository ppa:ubuntu-mate-dev/ppa
    • sudo apt-add-repository ppa:ubuntu-mate-dev/trusty-mate
    • sudo apt update
    • sudo apt install –no-install-recommends ubuntu-mate-core ubuntu-mate-desktop
    • echo “mate-session” > ~/.xsession

6、之後就可以使用遠端桌面連接Windows和Ubuntu了。

  • 结果如下(Mate):

Common Problem

  • 遠端連接出現error-problem connecting:
    • 通常是因為vnc服務沒有架好,查看port的監聽狀態(詳見步驟3),如果只有3389和3350沒有5910的情況,則需要手動開啟相應的port進行連接。
  • 解決方法:
    • vncserver : 1~9 (引號兩邊都需要空格)
    • 在xrdp設定檔中將prot從-1改為ask剛才開啟的port(vncserver設1則開啟5901以此類推)
  • 遠端桌面連接進入出現灰色網格,無圖像,滑鼠變成X:
    • 出現這種狀況通常是沒有安裝遠端桌面套件,導致圖形化界面無法呈現。
  • 解決方法:
    • 安裝三種遠端桌面套件的一種(詳見步驟5)

Attention

一定要先安装tightvncserver等vnc服务才能安装xrdp,不要重复安装server。
如果需要卸载xrdp和vnc server,可以使用:

  • sudo apt-get purge xrdp
  • sudo apt-get purge tightvncserver