It turned out that additional configuration is needed. There are multiple ways to do this, but this works for me.
Make backups of original files
cp -f /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.org
cp -f /etc/xrdp/sesman.ini /etc/xrdp/sesman.ini.org
Use Xorg
sed -i "s/autorun=/autorun=Xorg/g" /etc/xrdp/xrdp.ini
Prevent the error: Listening socket is in wrong state, terminating listener
sed -i "0,/allow_channels=true/{s/allow_channels=true/allow_channels=false/}" /etc/xrdp/xrdp.ini
Start the correct session; ~/.Xinitrc
is not needed
echo "PREFERRED=gnome-session" > /etc/sysconfig/desktop
Prevent the error: Could not acquire name on session bus
echo "unset DBUS_SESSION_BUS_ADDRESS; gnome-session" >> /etc/sysconfig/desktop
echo "allowed_users=anybody" > /etc/X11/Xwrapper.config
Xrdp disconnected when using the clipboard
sed -i "/param=96/ a param=-AcceptCutText=0\nparam=-SendCutText=0\nparam=-SendPrimary=0\nparam=-SetPrimary=0" /etc/xrdp/sesman.ini
Restart XRDP
systemctl restart xrdp
Sources:
https://github.com/neutrinolabs/xrdp/issues/755
https://mknowles.com.au/wordpress/2013/02/15/installing-xrdp-on-fedora-18-with-mate-desktop/
http://pkgs.fedoraproject.org/cgit/rpms/xrdp.git/tree/README.Fedora?h=f25&id=12a8dc25dd6df49335eb643c55e18abdb084b4d5