Compare commits
10 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ded6843d0a | ||
|
|
950bca1572 | ||
|
|
da773d7b96 | ||
|
|
840ef696de | ||
|
|
7691357362 | ||
|
|
94b6f4aba2 | ||
|
|
f339e61176 | ||
|
|
8206f1cde6 | ||
|
|
5c0c4355e8 | ||
|
|
15b67bfea5 |
6 changed files with 57 additions and 38 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -39,3 +39,4 @@ xrdp-cvs-03-17-2010.tar.gz
|
|||
/xrdp-0.10.4.tar.gz
|
||||
/xrdp-0.10.5.tar.gz
|
||||
/xrdp-0.10.6.tar.gz
|
||||
/xrdp-0.10.6.1.tar.gz
|
||||
|
|
|
|||
35
README.md
35
README.md
|
|
@ -1,6 +1,5 @@
|
|||
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.
|
||||
|
|
@ -12,7 +11,6 @@ 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`
|
||||
|
|
@ -27,7 +25,6 @@ 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
|
||||
|
|
@ -40,14 +37,12 @@ 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
|
||||
|
|
@ -56,16 +51,23 @@ 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.
|
||||
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.
|
||||
|
||||
Default configuration in `/etc/pam.d/xrdp-sesman` uses password-auth for auth,
|
||||
account, password and session. This may result in an incorrect context for the
|
||||
processes in the session. Please adjust this file to match your desktop
|
||||
environment. An example for Gnome desktop is given in the file.
|
||||
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`:
|
||||
|
|
@ -80,19 +82,23 @@ 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
|
||||
|
|
@ -102,7 +108,6 @@ 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:
|
||||
|
||||
|
|
|
|||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (xrdp-0.10.6.tar.gz) = 4631162f8a35ee358238e52882964819c39067b2337f2affecae28ca53008e4dae455e0b59932724c222af8016c5b8a638bb455d31dfdf0774f6558e79876781
|
||||
SHA512 (xrdp-0.10.6.1.tar.gz) = 14fc2bdc7d450b0194d48244450fee2dc40d248bf0d7d64538959827919d517bda90cda5985014e6b5adf101cbb584e83cf72e5181adcff78b3131653937e108
|
||||
|
|
|
|||
|
|
@ -18,18 +18,3 @@
|
|||
; Leave the rest parameters as-is unless you understand what will happen.
|
||||
param=-config
|
||||
param=xrdp/xorg.conf
|
||||
diff -rupN xrdp-0.10.6-v/sesman/sesman.ini.in xrdp-0.10.6/sesman/sesman.ini.in
|
||||
--- xrdp-0.10.6-v/sesman/sesman.ini.in 2026-05-22 04:53:40.290862163 +1000
|
||||
+++ xrdp-0.10.6/sesman/sesman.ini.in 2026-05-22 04:58:24.490852336 +1000
|
||||
@@ -170,7 +170,10 @@ param=Xvnc
|
||||
param=-bs
|
||||
param=-nolisten
|
||||
param=tcp
|
||||
-param=-localhost
|
||||
+# Unix domain socket is default, close TCP
|
||||
+#param=-localhost
|
||||
+param=-rfbport
|
||||
+param=-1
|
||||
param=-dpi
|
||||
param=96
|
||||
|
||||
|
|
@ -1,13 +1,30 @@
|
|||
#%PAM-1.0
|
||||
# Generic Fedora config
|
||||
# Generic Fedora/RHEL config - use this unless you are running xrdp
|
||||
# sessions into a GNOME desktop, in which case use the Gnome-specific
|
||||
# config below instead, which also unlocks GNOME Keyring automatically.
|
||||
auth include password-auth
|
||||
account include password-auth
|
||||
password include password-auth
|
||||
session include password-auth
|
||||
|
||||
# pam_selinux.so close must be the first session rule so any
|
||||
# prior context is torn down before we set up the new one.
|
||||
session required pam_selinux.so close
|
||||
session required pam_loginuid.so
|
||||
# pam_selinux.so open must run before any module below that
|
||||
# should execute in the user's context. Without this pair,
|
||||
# session processes are left running as unconfined_service_t
|
||||
# instead of unconfined_t. See rhbz#2499948.
|
||||
session required pam_selinux.so open
|
||||
session required pam_namespace.so
|
||||
session optional pam_keyinit.so force revoke
|
||||
session include password-auth
|
||||
session optional pam_lastlog.so silent
|
||||
|
||||
# Gnome specific Fedora config
|
||||
# Gnome specific config. Uncomment this block and comment out the
|
||||
# generic block above if you are running xrdp sessions into a GNOME
|
||||
# desktop. This uses GDM's own PAM stack, which already includes the
|
||||
# correct pam_selinux.so/pam_namespace.so ordering and additionally
|
||||
# unlocks GNOME Keyring automatically at login.
|
||||
#auth include gdm-password
|
||||
#account include gdm-password
|
||||
#password include gdm-password
|
||||
|
|
|
|||
19
xrdp.spec
19
xrdp.spec
|
|
@ -22,8 +22,8 @@
|
|||
Summary: Open source remote desktop protocol (RDP) server
|
||||
Name: xrdp
|
||||
Epoch: 1
|
||||
Version: 0.10.6
|
||||
Release: 2%{?dist}
|
||||
Version: 0.10.6.1
|
||||
Release: 3%{?dist}
|
||||
# Automatically converted from old format: ASL 2.0 and GPLv2+ and MIT - review is highly recommended.
|
||||
License: Apache-2.0 AND GPL-2.0-or-later AND LicenseRef-Callaway-MIT
|
||||
URL: http://www.xrdp.org/
|
||||
|
|
@ -38,14 +38,13 @@ Source7: xrdp-polkit-1.rules
|
|||
Source8: %{name}-tmpfiles.conf
|
||||
Source9: %{name}.sysusers
|
||||
Patch0: xrdp-0.10.2-sesman.patch
|
||||
Patch1: xrdp-0.10.3-xrdp-ini.patch
|
||||
Patch2: xrdp-0.10.1-service.patch
|
||||
Patch3: xrdp-0.10.0-scripts-libexec.patch
|
||||
Patch4: xrdp-0.9.6-script-interpreter.patch
|
||||
Patch5: xrdp-0.9.16-arch.patch
|
||||
Patch6: xrdp-0.9.18-vnc-uninit.patch
|
||||
%if 0%{?fedora} >= 32 || 0%{?rhel} >= 8
|
||||
Patch8: xrdp-0.10.6-sesman-ini.patch
|
||||
Patch8: xrdp-0.10.5-sesman-ini.patch
|
||||
%endif
|
||||
|
||||
BuildRequires: make
|
||||
|
|
@ -351,6 +350,18 @@ fi
|
|||
%{_datadir}/selinux/*/%{name}.pp
|
||||
|
||||
%changelog
|
||||
* Sat Jul 18 2026 Bojan Smojver <bojan@rexursive.com> - 1:0.10.6.1-3
|
||||
- Fix bug #2499948
|
||||
|
||||
* Tue Jul 07 2026 Bojan Smojver <bojan@rexursive.com> - 1:0.10.6.1-1
|
||||
- Update to 0.10.6.1
|
||||
- CVE-2026-41252, CVE-2026-41521, CVE-2026-44178, CVE-2026-42218
|
||||
- CVE-2026-44978, CVE-2026-54538, CVE-2026-55238, CVE-2026-55626
|
||||
- CVE-2026-55639, CVE-2026-55645
|
||||
|
||||
* Sat Jun 13 2026 Yaakov Selkowitz <yselkowi@redhat.com> - 1:0.10.6-3
|
||||
- Rebuilt for openssl 4.0
|
||||
|
||||
* Fri May 22 2026 Bojan Smojver <bojan@rexursive.com> - 1:0.10.6-2
|
||||
- close TCP port in default Xvnc config, Unix domain socket only
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue