Kali Linux Install xRDP
Install xRDP
sudo apt update
sudo apt install xrdp
sudo systemctl enable xrdp
sudo systemctl start xrdp
sudo systemctl status xrdp
Setup Pulseaudio
sudo apt install pulseaudio-module-xrdp
sudo apt install pulseaudio-module-xrdp-dbgsym
pulseaudio -k
Authentication is required to create a color managed device
To bypass this authentication that is required at each log-in, we need to create the file /etc/polkit‑1/localauthority/50-local.d/color.pkla
.
sudo nano /etc/polkit-1/localauthority/50-local.d/color.pkla
[Allow colord for all users]
Identity=unix-user:*
Action=org.freedesktop.color-manager.create-device;org.freedesktop.color-manager.create-profile;org.freedesktop.color-manager.delete-device;org.freedesktop.color-manager.delete-profile;org.freedesktop.color-manager.modify-device;org.freedesktop.color-manager.modify-profile;org.freedesktop.packagekit.system-sources-refresh
ResultAny=yes
ResultInactive=yes
ResultActive=yes
sudo systemctl restart polkit
Switch the Desktop Environment
In order to change the desktop environment for xRDP you need to install a different (new) kali-desktop-${environment}
. The available desctop environments are listed at Figure 1. Let's assume we want to install Gnome.
sudo apt update && \
sudo apt install kali-desktop-gnome
Then you need to set-up the default desktop environment as it is shown at Figure 1.
sudo update-alternatives --config x-session-manager
Tweak the Browsers
If your are connecting to a virtual machine which doesn't have dedicated video card, you may want to disable the hardware acceleration within the browsers in use in order to achieve better performance – Figure 2.
Add Keyboard Layout
The source of this section is this answer at Ask Ubuntu. The firs step is to find the xRDP's key-map name for the language you want to add. For example the key-map code for Bulgarian language is 0x0402
. So to generate key-map for this language you need to perform the following commands and then log-out and restart rdp.service
via SSH or just reboot the instance.
xrdp-genkeymap km-0402.ini
sudo mv km-0402.ini /etc/xrdp/km-00000402.ini
sudo chown root:root /etc/xrdp/km-00000402.ini
After the most recent update of xRDP (September 2022) I was need to add the following directives into the file xrdp_keyboard.ini
.
sudo nano /etc/xrdp/xrdp_keyboard.ini
[default_rdp_layouts]
rdp_layout_bg=0x00000402
[default_layouts_map]
rdp_layout_bg=bg
[rdp_layouts_map_mac]
rdp_layout_bg=bg
See also
- Apache Guacamole VNC Client and PulseAudio for Desktop Users
- xRDP on Ubuntu Desktop and Pop! OS
References
- Rafe Hart: Installing xRDP on Kali Linux
- Proxmox on Reddit: Headless GPU Passthrough with RDP Access
- Unix & Linux: Authentication is required to create a color profile
- BLOG‑D Without Nonsense: How to Switch Desktop Environments for Kali Linux easily
- Ask Ubuntu: xrdp – how to change keyboard layout
- SourceForge: xRDP > docs > keymap-names.txt
- GitHub: xRDP > docs > keymap-names.txt
- C‑nergy.be: XRDP – Enable multiple users to connect via xrdp – HowTo Configuration
- Spiceworks: Can't save multiple RDP sessions/credentials on the old native Windows RDP client