1. 程式人生 > >Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redhat 7)

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redhat 7)

您多久訪問一次Linux桌面? 您使用什麼工具來訪問遠端桌面?

Xrdp是一個開源工具,允許使用者通過Windows RDP訪問Linux遠端桌面。 除了Windows RDP之外,xrdp工具還接受來自其他RDP客戶端的連線,如FreeRDP,rdesktop和NeutrinoRDP。 Xrdp現在支援TLS安全層。

Xrdp要求

  • xrdp和xorgxrdp包
  • 監聽3389/tcp。 確保您的防火牆接受連線

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

1)在Linux上安裝

在Ubuntu 18.04/Ubuntu 18.10上

首先,您需要在Ubuntu上安裝Xrdp

apt install xrdp

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

您必須配置polkit規則以避免在Windows上的xrdp登入螢幕上輸入使用者名稱和密碼後進行身份驗證彈出視窗

polkit.addRule(function(action, subject) {
if ((action.id == “org.freedesktop.color-manager.create-device” || action.id == “org.freedesktop.color-manager.create-profile” || action.id == “org.freedesktop.color-manager.delete-device” || action.id == “org.freedesktop.color-manager.delete-profile” || action.id == “org.freedesktop.color-manager.modify-device” || action.id == “org.freedesktop.color-manager.modify-profile”) && subject.isInGroup(“{group}”))
{
return polkit.Result.YES;
}
});

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

重啟xrdp服務

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

然後確保該服務正在執行

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

現在確保在系統啟動時自動啟動服務

現在您需要檢查您的IP地址,因為您將需要它來進行連線

我的IP地址是192.168.182.146。 所以請記住。

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

Xrdp使用埠3389,所以一定要開啟它。 預設情況下禁用UFW,因此您需要啟用防火牆併為xrdp建立規則

如果這時候出現所說的Ubuntu安中裝的xrdp,桌面共享設定為允許,虛擬機器設定的是橋接,虛擬機器內外可以互相ping 通;
在Windows下用 mstsc 連線Ubuntu桌面,跳出賬號密碼頁面,登入後自動退出(閃退)的解決方法:

sudo apt-get install xfce4
echo xfce4-session > ~/.xsession
touch .session
sudo vim /etc/xrdp/startwm.sh
在. /etc/X11/Xsession前面加
xfce4-session

然後重啟 sudo service xrdp restart。

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

現在,您可以在Windows端繼續配置。

在/ 7上

確保之前安裝了Epel儲存庫

Xrdp - 通過Windows的RDP連線Ubuntu Linux遠端桌面

現在安裝xrdp包

# yum update && yum -y install xrdp tigervnc-server

Xrdp - 通過Windows的RDP連線Ubuntu Linux遠端桌面

在防火牆中新增規則。 CentOS/RedHat不是ufw,而是firewalld來配置

[[email protected] ~]# firewall-cmd --permanent --zone=public --add-port=3389/tcp
success

然後重新載入防火牆
[[email protected] ~]# firewall-cmd --reload
success

現在啟用並重新啟動xrdp服務
[[email protected] ~]# systemctl enable xrdp && systemctl restart xrdp
Created symlink from /etc/systemd/system/multi-user.target.wants/xrdp.service to /usr/lib/systemd/system/xrdp.service.

檢查您的IP地址以獲取Windows上的遠端連線

[[email protected] ~]# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
      valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
      valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:93:77:6f brd ff:ff:ff:ff:ff:ff
    inet 192.168.182.148/24 brd 192.168.182.255 scope global noprefixroute dynamic ens33
      valid_lft 1285sec preferred_lft 1285sec
    inet6 fe80::72bf:712e:7c0b:ca6d/64 scope link noprefixroute
      valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:02:67:f9 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
      valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000
    link/ether 52:54:00:02:67:f9 brd ff:ff:ff:ff:ff:ff

2)從Windows連線

在我們的Windows機器上,例如Windows 10,啟動預設的遠端桌面連線工具。

輸入IP地址和使用者名稱

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

您需要輸入機器的IP地址,系統會要求您輸入使用者名稱

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

Ubuntu上的

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

訪問CentOS的遠端桌面

現在確認資訊並啟動連線。 如果您未在本地登出,則遠端登入將失敗。現在您將被要求輸入密碼

Xrdp - 通過Windows的RDP連線Linux遠端桌面(Ubuntu/CentOS/Redh

現在確認您的憑據。 您可以在頂部和登入頁面上看到我的Ubuntu的IP地址, 輸入您的密碼連線。

如果你知道還有他工具, 請在評論裡告知我們。