Skip to content
Bots!
Bots!
  • About
    • Myself
    • আমার দোয়া
  • Bookmarks
    • Bookmarks
    • My OCI Bookmarks
    • Useful Proxmox Commands & Links
    • Learning Nano
    • Useful Sites
    • Useful Virtualbox Command
    • Useful MySQL Command
    • Useful Linux Command
    • BTT-CAS
  • Resources
    • Webinar on Cloud Adoption for Project Managers
  • Photos
  • Videos
  • Downloads
Bots!

Install XRDP on CentOS 7

Rumi, September 12, 2023

Prerequisites:

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 https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

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: centos.excellmedia.net
* epel: del-mirrors.extreme-ix.org
* extras: centos.excellmedia.net
* updates: centos.excellmedia.net
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
=================================================================================================
Installing:
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) <epel@fedoraproject.org>"
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

Installed:
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

Complete!

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 0.0.0.0:3389 0.0.0.0:* LISTEN 1508/xrdp
tcp 0 0 127.0.0.1:3350 0.0.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.

Ref:

How to install XRDP on CentOS 7 or RHEL 7

Administrations Collected Articles Configurations (Linux) CentOSXRDP

Post navigation

Previous post
Next post

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Myself…

Hi, I am Hasan T. Emdad Rumi, an IT Project Manager & Consultant, Virtualization & Cloud Savvyfrom Dhaka, Bangladesh. I have prior experience in managing numerous local and international projects in the area of Telco VAS & NMC, National Data Center & PKI Naitonal Root and CA Infrastructure. Also engaged with several Offshore Software Development Team.

Worked with Orascom Telecom-Banglalink, Network Elites as VAS partner, BTRC, BTT (Turkey) , Mango Teleservices Limited and Access to Informaiton (A2I-UNDP)

Currently working at Oracle Corporation as Principal Technology Solution and Cloud Architect.

You can reach me [h.t.emdad at gmail.com] and I will be delighted to exchange my views.

Tags

Apache Bind Cacti CentOS CentOS 6 CentOS 7 Debain Debian Debian 10 Debian 11 Debian 12 DKIM Docker icinga iptables Jitsi LAMP Letsencrypt Linux Munin MySQL Nagios Nextcloud NFS nginx openvpn pfsense php Postfix Proxmox RDP Softether SSH SSL Ubuntu Ubuntu 16 Ubuntu 18 Ubuntu 20 Varnish virtualbox vpn Webmin Windows 10 XCP-NG zimbra

Topics

Recent Posts

  • KVM Cloud Capacity Planning Script (Enhanced) February 20, 2026
  • Youtube MP3 Downloader Script using AI February 14, 2026
  • Install Softether VPN and create a Destination NAT (D-NAT) Rule to access the private Client VPN Node on a Debian 12 OS February 14, 2026
  • Deploying Pulse Monitoring for Proxmox Cluster Ecosystem February 13, 2026
  • Technitium DNS Web UI Configuration for Primary-Secondary Name Servers February 12, 2026
  • Technitium DNS with Primary-Slave Installation on Debian February 12, 2026
  • Install Docker and Docker Compose in Debian 12 February 5, 2026
  • Install GUI on Debian 12 using CLI February 4, 2026
  • Configuring Multiple PHP Versions on Virtualmin January 30, 2026
  • Deploy a Container TIG (Telegraf, InfluxDB and Grafana) Stack January 24, 2026

Archives

Top Posts & Pages

  • KVM Cloud Capacity Planning Script (Enhanced)
©2026 Bots! | WordPress Theme by SuperbThemes