Install XRDP on CentOS 7


XRDP is an open-source version of the Microsoft Remote desktop Protocol server. It enables operating systems besides Microsoft Windows to offer a fully functional remote desktop experience. The prerequisites for the installation include:

Before all else, install Gnome GUI on CentOS 7 or RHEL 7.

Then install and configure EPEL repository with this commandrpm -Uvh

Part 1: Install XRDP on CentOS 7/RHEL 7

Install XRDP package on CentOS7 or RHEL 7 with the following YUM command :

yum, -y install xrdp tigervncserver

As a result, you will get output similar to this:

Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base:
* epel:
* extras:
* updates:
Resolving Dependencies
--> Running transaction check
---> Package tigervnc-server.x86_64 0:1.8.0-2.el7_4 will be installed
---> Package xrdp.x86_64 1:0.9.5-1.el7 will be installed
--> Processing Dependency: xorgxrdp for package: 1:xrdp-0.9.5-1.el7.x86_64
--> Running transaction check
---> Package xorgxrdp.x86_64 0:0.2.5-3.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

Package Arch Version Repository Size
tigervnc-server x86_64 1.8.0-2.el7_4 updates 213 k
xrdp x86_64 1:0.9.5-1.el7 epel 413 k
Installing for dependencies:
xorgxrdp x86_64 0.2.5-3.el7 epel 61 k

Transaction Summary
Install 2 Packages (+1 Dependent package)

Total download size: 688 k
Installed size: 2.7 M
Downloading packages:
warning: /var/cache/yum/x86_64/7/epel/packages/xrdp-0.9.5-1.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY
Public key for xrdp-0.9.5-1.el7.x86_64.rpm is not installed
(1/3): xrdp-0.9.5-1.el7.x86_64.rpm | 413 kB 00:00:01
(2/3): tigervnc-server-1.8.0-2.el7_4.x86_64.rpm | 213 kB 00:00:01
(3/3): xorgxrdp-0.2.5-3.el7.x86_64.rpm | 61 kB 00:00:01
Total 409 kB/s | 688 kB 00:00:01
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Importing GPG key 0x352C64E5:
Userid : "Fedora EPEL (7) <>"
Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5
Package : epel-release-7-11.noarch (installed)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Warning: RPMDB altered outside of yum.
Installing : xorgxrdp-0.2.5-3.el7.x86_64 1/3
Installing : 1:xrdp-0.9.5-1.el7.x86_64 2/3
Installing : tigervnc-server-1.8.0-2.el7_4.x86_64 3/3
Verifying : xorgxrdp-0.2.5-3.el7.x86_64 1/3
Verifying : tigervnc-server-1.8.0-2.el7_4.x86_64 2/3
Verifying : 1:xrdp-0.9.5-1.el7.x86_64 3/3

tigervnc-server.x86_64 0:1.8.0-2.el7_4 xrdp.x86_64 1:0.9.5-1.el7

Dependency Installed:
xorgxrdp.x86_64 0:0.2.5-3.el7


Part 2: Install XRDP on CentOS 7

After XRDP is installed, you can start the service with the command:

systemctl start xrdp

XRDP will now listen on 3389. You can verify this with the following netstat command:

netstat -antup | grep xrdp

This results in the following output:

tcp 0 0* LISTEN 1508/xrdp
tcp 0 0* LISTEN 1507/xrdp-sesman

We would like to point out that the XRDP will not start automatically after a reboot. Hence, run this command to enable the service during system startup:

systemctl enable xrdp

Configure the firewall

The next step is to configure the firewall in order to permit RDP connections from external machines. Run this command to add the exception for the RDP port:

firewall-cmd –permanent –add-port=3389/tcp
firewall-cmd –reload

Configure SELinux

Run the following commands to configure SELinux:

chcon –type=bin_t /usr/sbin/xrdp
chcon –type=bin_t /usr/sbin/xrdp-sesman

Test XRDP Remote Connectivity

Next, let’s check the remote connectivity. First, take RDP on any Windows machine via Remote Desktop Connection. Then enter the Linux server’s IP address in the computer field and click connect.

Ignore the RDP certificate name mismatch warning.

Then enter the username and password. You can opt for the root or any user available on the system. Ensure you use the module Xvnc.

Once you click ok, you will obtain the desktop within thirty seconds.


How to install XRDP on CentOS 7 or RHEL 7


Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.