The xrdp rpms
Find a file
2026-07-18 08:09:58 +10:00
.gitignore Upload new source tarball 2026-07-07 19:49:14 +10:00
openssl.conf Add expanded openssl.conf to sources, use no location in certificate 2017-01-22 22:23:24 -08:00
README.md Replace m-dashes with hyphens 2026-07-18 08:06:58 +10:00
sources Update to 0.10.6.1 2026-07-07 19:33:24 +10:00
xrdp-0.9.6-script-interpreter.patch Actually add the script interpreter patch. 2018-04-23 15:22:45 +10:00
xrdp-0.9.16-arch.patch Adjust arch patch. 2021-05-01 09:39:52 +10:00
xrdp-0.9.18-vnc-uninit.patch Adjust vnc.c patch for 0.9.18. 2022-01-11 20:43:47 +11:00
xrdp-0.10.0-scripts-libexec.patch Initial work on build of 0.10.0 2024-03-12 09:29:28 +11:00
xrdp-0.10.1-service.patch Update to 0.10.1 2024-08-01 00:09:28 +10:00
xrdp-0.10.2-sesman.patch Update to 0.10.2-rc.1 2024-12-24 08:13:31 +11:00
xrdp-0.10.3-xrdp-ini.patch Enable Xvnc over Unix domain socket 2025-04-01 21:15:51 +11:00
xrdp-0.10.5-sesman-ini.patch Revert "Close TCP port in default Xvnc config, Unix domain socket only" 2026-07-07 19:18:11 +10:00
xrdp-polkit-1.rules README.Fedora: VSOCK support. 2020-01-30 05:55:40 +11:00
xrdp-sesman.pamd Replace m-dashes with hyphens 2026-07-18 08:06:58 +10:00
xrdp-tmpfiles.conf Explicitly run systemd-tmpfiles --remove on package removal 2024-05-14 18:37:45 +10:00
xrdp.logrotate Remove daily and compress from logrotate file (BZ #1977175). 2021-07-14 05:38:58 +10:00
xrdp.spec Bump release for rebuild 2026-07-18 08:09:58 +10:00
xrdp.sysconfig initial version 2009-08-14 18:01:35 +00:00
xrdp.sysusers Add xrdp sysusers 2024-12-25 22:43:39 +11:00
xrdp.te Remove setpriv patch and adjust SELinux policy to match. 2021-01-02 11:19:51 +11:00

Downgrade from 0.10.x to 0.9.x

Version 0.10.x requires different permissions of /run/xrdp directory than version 0.9.x. When 0.10.x is fully uninstalled, this directory is removed and subsequent installation of 0.9.x should work fine.

However, if 0.10.x is downgraded to 0.9.x, the directory is preserved, because we could have xrdp and its sessions still running, so subsequent start or restart will fail, unless the permissions of /run/xrdp directory are changed to 1777 beforehand.

Unprivileged xrdp user in 0.10.2 and up

Recent builds of xrdp (0.10.2 and above) create local unprivileged xrdp user, which is used to run xrdp daemon. Script /usr/share/xrdp/xrdp-chkpriv checks whether /etc/xrdp/key.pem, /etc/xrdp/cert.pem and /etc/xrdp/rsakeys.ini files have correct ownership and permissions. It also makes sure /etc/xrdp/xrdp.ini and /etc/xrdp/sesman.ini agree on which group is used for unprivileged user.

If you are upgrading from previous version of xrdp and you already have all these files, you may need to adjust them by hand after running this script. For clean installs, these files should be created with correct ownership and permissions.

Restarts

Service restarts after RPM package upgrades have been disabled on purpose. This is to avoid a situation where an update is performed from within a session running on xrdp, which can then cause dnf to only perform part of the transaction and leave the system in a state that requires further manual intervention, including removal of duplicate packages etc.

So, it will be up to the user/admin to restart xrdp service after any RPM package upgrade. This is in line with what other GUI systems like Xorg and Wayland do.

xorgxrdp

Note that xorgxrdp is not installed and configured by default. Each build depends on specific binary version of Xorg. If you wish to use it, install it by hand or its glamor build.

SELinux

You may need to install xrdp-selinux package in order to get the required SELinux policy that will allow xrdp and associated processes to run successfully if SELinux is enabled. On versions of Fedora and RHEL that support weak dependencies, xrdp-selinux will be a recommended package.

WARNING: The policy module contains a rule that permits unconfined_service_t processes to transition into unconfined_t. If xrdp is not the only service that runs as unconfined_service_t on your system, this policy will allow any other such service to transition as well. This transition is exercised on every xrdp session (see below), not just latent in the policy.

The default /etc/pam.d/xrdp-sesman configuration invokes pam_selinux.so, pam_loginuid.so, pam_namespace.so and pam_keyinit.so around the shared password-auth stack, so session processes get the correct unconfined_t context instead of remaining unconfined_service_t (rhbz#2499948).

If you are running a GNOME session over xrdp, comment out the generic block in /etc/pam.d/xrdp-sesman and uncomment the Gnome-specific block instead. This routes auth/session handling through gdm-password, which already carries the correct SELinux/session ordering and additionally unlocks GNOME Keyring automatically at login, so you won't be prompted to unlock it a second time inside the session.

TigerVNC >= 1.8.0

TigerVNC 1.8.0 enables clipboard support by default (i.e. no need to run vncconfig), which may cause disconnections in xrdp. To avoid the issue, these can be added to [Xvnc] stanza in /etc/xrdp/sesman.ini:

param=-AcceptCutText=0
param=-SendCutText=0
param=-SendPrimary=0
param=-SetPrimary=0

Of course, cut and paste support will not work with these set.

Runlevel

If the system is configured to boot into graphical target, you may experience problems with xrdp Gnome sessions. In order to avoid this, put the system into multi user target. Like this:

systemctl set-default multi-user.target

Then reboot.

GNOME on X11 is no longer part of Fedora, so GNOME is no longer a supported desktop for xrdp sessions on Fedora. If you need RDP access to a GNOME desktop, use GNOME's built-in headless GNOME Remote Desktop instead of xrdp - it speaks RDP natively, is Wayland-based, and doesn't need any of the X11/PAM workarounds this document describes. xrdp remains the right choice for XFCE, KDE Plasma, and other X11-based desktops on Fedora.

VSOCK

An example of a how to set up xrdp with VSOCK can be found here:

https://bugzilla.redhat.com/show_bug.cgi?id=1787953#c22

Polkit rules for active sessions, allowing access to colord and repository updates are already shipped, but in a current, JavaScript format.

KDE Plasma

If you are using plasma-workspace package with xrdp, be sure to install plasma-workspace-x11 to get full functionality. See this for more details:

https://github.com/neutrinolabs/xrdp/issues/3395