Remote desktop op Linux VPS instellen
Kies tussen een RustDesk relay of een volledige grafische desktop met xrdp en XFCE. Leer hoe u veilig via SSH verbindt in plaats van poort 3389 open te stellen voor het internet.
Wat remote desktop op een Linux VPS daadwerkelijk betekent
Twee verschillende producten beantwoorden aan de zoekopdracht "remote desktop op een Linux VPS", en het kiezen van de verkeerde optie kost u een middag werk. De eerste is een broker voor externe toegang. De self-hosted server van RustDesk is het meest gebruikte voorbeeld: deze fungeert als relay voor een sessie tussen twee machines die u al bezit, zoals uw laptop en de pc thuis. De gehuurde server tekent zelf geen desktop. Deze brengt de twee uiteinden met elkaar in contact en stuurt pakketten door wanneer ze elkaar niet rechtstreeks kunnen bereiken. De tweede optie is een echte grafische desktop die op de gehuurde server draait, waarbij de pixels in het datacenter worden gegenereerd en naar u worden gestreamd. Dit betreft xrdp, VNC (virtual network computing) of een container-workspace.
Eén vraag maakt het onderscheid. Zodra dit werkt, waar bevindt de muisaanwijzer zich dan? Op een machine die u al bezit, wilt u een broker. Op de VPS zelf, wilt u een desktop op de VPS. Het tweede geval krijgt hieronder de meeste aandacht, omdat dit het scenario is dat de meeste handleidingen overslaan.
Welke optie past bij uw werkzaamheden
- RustDesk met een eigen relay. Dit voorkomt dat de sessie via een openbare rendezvous-server van derden verloopt, omdat u zelf het sleutelpaar beheert. Het biedt geen bescherming voor de machine die wordt bestuurd; dit blijft de pc waarop u de client heeft geïnstalleerd, met het wachtwoord dat op die pc is ingesteld.
- xrdp via een SSH-tunnel of VPN. Dit beschermt u tegen het constante scannen van TCP 3389 over het hele internet en tegen het raden van wachtwoorden op het RDP-inlogscherm, omdat deze poort nooit direct aan het internet is blootgesteld. Het biedt echter geen bescherming voor een zwak accountwachtwoord tegen iemand die al toegang heeft tot de tunnel.
- VNC via dezelfde tunnel. Dit biedt een desktopsessie die blijft bestaan na een verbreking van de verbinding, gebruikmakend van een protocol dat ouder en eenvoudiger is dan RDP. Op zichzelf biedt dit geen enkele beveiliging: de tunnel verzorgt alle beveiligingstaken, waardoor VNC op een openbare poort de slechtste optie in dit rijtje is.
- Een container-werkruimte zoals Webtop of Kasm. Dit biedt een browser of een volledige desktop in een container die u kunt verwijderen en opnieuw kunt opbouwen, wat uw fysieke machine beschermt tegen alles wat die browser bezoekt. Het biedt geen bescherming voor de host: deze images draaien met ruime privileges en een wachtwoordloze
sudobinnenin, waardoor de container geen grens is die u moet vertrouwen bij vijandige workloads.
xrdp en XFCE installeren op Ubuntu 24.04
Een VPS-serverimage wordt geleverd zonder grafische desktopomgeving. U installeert er een en vervolgens xrdp, de open-source server die RDP (Remote Desktop Protocol) spreekt, hetzelfde protocol dat de Windows-client gebruikt. Kies een lichtgewicht desktop; XFCE is hiervoor de standaardkeuze.
sudo apt update
sudo apt install -y xrdp xorgxrdp xfce4 xfce4-goodies dbus-x11
systemctl is-active xrdpUbuntu 24.04 bevat xrdp 0.9.24 en xorgxrdp in de universe-component, zoals in augustus 2026. Installeer xorgxrdp bij naam, ook al is het slechts een aanbevolen pakket: het is de X server-backend die xrdp start voor een nieuwe sessie. Zonder dit pakket accepteert het inlogscherm uw wachtwoord, waarna u direct wordt teruggeleid naar het inlogscherm.
Geef nu aan de sessie door welke desktop moet worden gestart. xrdp voert /etc/xrdp/startwm.sh uit, dat op zijn beurt ~/.xsession uitvoert wanneer dat bestand bestaat.
echo "xfce4-session" > ~/.xsession
chmod 644 ~/.xsessionTot slot moet xrdp de TLS (Transport Layer Security)-sleutel kunnen lezen die het aan clients aanbiedt. Dat bestand heeft modus 640 en is eigendom van de groep ssl-cert.
ls -l /etc/ssl/private/ssl-cert-snakeoil.key
id xrdpDe listing toont -rw-r----- 1 root ssl-cert. Als id xrdp niet ssl-cert tussen de groepen weergeeft, voer dan sudo adduser xrdp ssl-cert uit en vervolgens sudo systemctl restart xrdp. Slaat u dit over, dan kan xrdp de sleutel niet openen en noteert /var/log/xrdp.log de fout met de snakeoil-bestandsnaam in de regel.
Waarom u poort 3389 niet moet openstellen voor het internet
TCP 3389 wordt continu gescand door alles op het internet, en een RDP-inlogscherm reageert beleefd op elke wachtwoordpoging. Stel deze poort niet open. Bind xrdp in plaats daarvan aan het loopback-adres en bereik het via een tunnel die u al vertrouwt.
Bewerk /etc/xrdp/xrdp.ini en wijzig de listener in de sectie [Globals].
[Globals]
port=tcp://.:3389Het meegeleverde bestand documenteert die syntaxis in de eigen commentaren: tcp://.:3389 betekent 127.0.0.1:3389, en tcp://:3389 betekent elke interface. Herstart en controleer dit, want een typefout hier zorgt er geruisloos voor dat de service op alle adressen actief blijft.
sudo systemctl restart xrdp
ss -tlnp | grep 3389U wilt 127.0.0.1:3389. Als u 0.0.0.0:3389 ziet, betekent dit dat xrdp uw wijziging heeft genegeerd, meestal omdat de regel verderop in het bestand onder een andere sectiekop is beland.
Open nu de tunnel vanaf uw eigen machine.
ssh -N -L 3389:127.0.0.1:3389 you@vps.example.com-N betekent "open de verbinding maar voer geen commando uit", zodat de sessie alleen bestaat om de poort te transporteren. Laat die terminal openstaan en richt de RDP-client op 127.0.0.1:3389. Op een Linux-client is de software FreeRDP 3, waarvan het binaire bestand op Ubuntu 24.04 xfreerdp3 heet:
sudo apt install -y freerdp3-x11
xfreerdp3 /v:127.0.0.1:3389 /u:you /dynamic-resolution +clipboard /soundGebruik op Windows de ingebouwde mstsc en typ 127.0.0.1 als computernaam. FreeRDP vraagt u bij de eerste verbinding om het certificaat te vertrouwen en toont Do you trust the above certificate? (Y/T/N), wat verwacht wordt bij het zelfondertekende snakeoil-certificaat.
Als ssh bind [127.0.0.1]:3389: Address already in use antwoordt, is poort 3389 op uw eigen machine al in gebruik. Verplaats het lokale eindpunt met ssh -N -L 13389:127.0.0.1:3389 you@vps.example.com en verbind met 127.0.0.1:13389.
Eén tunnel per persoon wordt vermoeiend, dus voor een team is een privénetwerk een betere oplossing. Plaats de server achter een zelfgehoste WireGuard VPN, geef deze het tunneladres 10.8.0.1 en stel port=tcp://10.8.0.1:3389 in zodat xrdp alleen binnen de VPN reageert. Hoe dan ook, de firewallregel voor 3389 zou in het geheel niet moeten bestaan. Als u niet zeker weet wat uw huidige regels toestaan, begin dan bij de basis van ufw-firewalls op een VPS en controleer dit voordat u verbinding maakt, niet erna.
Hoeveel RAM verbruikt een remote desktop op een 2 GB VPS
De desktopomgeving die u kiest, bepaalt of een 2 GB-abonnement comfortabel of ontoereikend is. De onderstaande cijfers zijn afgeronde, typische waarden voor het geheugengebruik direct na het inloggen op Ubuntu 24.04, gebaseerd op gepubliceerde vergelijkingen in plaats van metingen op uw eigen machine. Meet uw eigen verbruik met free -m direct nadat u verbinding heeft gemaakt.
De gegevens achter deze grafiek
[
{
"label": "LXQt",
"idle_ram_mb": 300
},
{
"label": "XFCE",
"idle_ram_mb": 400
},
{
"label": "MATE",
"idle_ram_mb": 500
},
{
"label": "KDE Plasma",
"idle_ram_mb": 800
},
{
"label": "GNOME",
"idle_ram_mb": "1,200"
}
]Bij deze 5 desktops is de spreiding het belangrijkste punt. LXQt verbruikt ongeveer 300 MB en XFCE ongeveer 400 MB; beide laten op een 2 GB-machine voldoende ruimte over voor een browser. GNOME vereist ongeveer 1,200 MB voordat u ook maar één venster opent. Op een 2 GB-systeem betekent dit dat de browser moet vechten met de desktopomgeving om het resterende geheugen.
De browser is de werkelijke kostenpost, niet de desktopomgeving. Een moderne browser verbruikt tussen de 150 en 400 MB per actief tabblad, waardoor een 2 GB VPS met XFCE slechts een handvol tabbladen aankan voordat het systeem begint te swappen. Voeg swap toe zodat de machine vertraagt in plaats van processen te beëindigen: sudo fallocate -l 2G /swapfile, gevolgd door sudo chmod 600 /swapfile, sudo mkswap /swapfile, sudo swapon /swapfile, en een bijbehorende regel in /etc/fstab zodat deze instelling een reboot overleeft. Wanneer een proces zonder waarschuwing verdwijnt, voer dan dmesg | grep -i "killed process" uit. Die regel geeft aan dat de out-of-memory killer van de kernel het proces heeft beëindigd; de browser is hierbij meestal het slachtoffer.
CPU is de andere beperkende factor, en deze wordt vaak onderschat. Een VPS beschikt niet over een GPU, dus X valt terug op software-rendering via llvmpipe. Dit betekent dat de CPU elke pixel moet tekenen. Het scrollen door een zware pagina en het afspelen van video zorgen voor een hoge CPU-belasting, waarbij de framerate daalt in plaats van dat de machine vastloopt. Dit is dezelfde barrière waar u tegenaan loopt als u zich afvraagt of u kunt gamen op een VPS: voor alles wat 3D is, is het antwoord nee, en wel om precies deze reden.
Geluid en klembord in een xrdp-sessie
Ubuntu 24.04 gebruikt PipeWire voor audio, en de geluidsomleiding van xrdp is geschreven voor PulseAudio. Daarom levert een nieuwe installatie wel beeld, maar geen geluid op. Ubuntu levert de benodigde bridge als pakket mee.
sudo apt install -y pipewire-module-xrdp pulseaudio-utils alsa-utilsLog volledig uit de RDP-sessie en log opnieuw in, omdat de module wordt geladen bij het starten van de sessie. Opnieuw verbinden is niet voldoende. Controleer vervolgens vanuit de sessie:
pactl list short sinks
speaker-test -c 2 -t wav -l 1U hoort een sink te zien waarvan de naam xrdp bevat, en u hoort de testtoon via uw client. Als er geen xrdp-sink is, is de module niet in deze sessie geladen. Uw client moet ook om audio vragen: dit is de /sound-vlag op xfreerdp3, of de instelling "Remote audio" onder Lokale bronnen in de Windows-client.
Het tekstklembord werkt in beide richtingen zodra xrdp-chansrv actief is voor uw sessie, wat xrdp automatisch voor u start. Bevestig dit met pgrep -a xrdp-chansrv. Als kopiëren en plakken halverwege een sessie stopt met werken, is dat proces beëindigd; opnieuw verbinden start het proces opnieuw. Het kopiëren van bestanden in plaats van tekst is een apart kanaal genaamd schijfomleiding: /drive:home,/home/you op xfreerdp3 koppelt een lokale map aan de externe sessie.
De polkit-pop-up en andere problemen bij de eerste aanmelding
De meest voorkomende verrassing bij de eerste aanmelding is een dialoogvenster met de tekst Authentication is required to create a color managed device. De oorzaak is specifiek. De colord-service vraagt polkit om toestemming; polkit verleent die actie alleen stilzwijgend aan een sessie die als lokaal wordt beschouwd. Een RDP-sessie wordt niet als lokaal aangemerkt, waardoor polkit terugvalt op het vragen om een wachtwoord. Ubuntu 24.04 wordt geleverd met polkit 124, waarin de oude lokale autorisatiebestanden .pkla zijn verwijderd. Elke handleiding die adviseert om /etc/polkit-1/localauthority/50-local.d/45-allow-colord.pkla te schrijven, heeft daarom geen enkel effect op 24.04. Schrijf in plaats daarvan een JavaScript-regel.
/* /etc/polkit-1/rules.d/45-allow-colord.rules */
polkit.addRule(function(action, subject) {
if (action.id.indexOf("org.freedesktop.color-manager.") === 0 &&
subject.isInGroup("sudo")) {
return polkit.Result.YES;
}
});Voer sudo systemctl restart polkit uit en maak opnieuw verbinding. Het is nuttig om twee andere fouten te herkennen aan hun symptomen.
Het aanmeldvenster accepteert uw wachtwoord, maar keert direct terug. De sessie is gestart en direct weer beëindigd. Lees eerst /var/log/xrdp-sesman.log en vervolgens ~/.xsession-errors in uw thuismap. Een ontbrekend xorgxrdp, een ~/.xsession die verwijst naar een desktopomgeving die niet is geïnstalleerd, een thuismap waar u niet naar kunt schrijven of een volle schijf leiden allemaal tot dit resultaat.
U maakt verbinding en ziet een grijs scherm met een X-cursor. X is gestart, maar de desktopomgeving niet. Dit is opnieuw ~/.xsession: voer xfce4-session handmatig uit via SSH en lees de foutmelding die wordt weergegeven.
Wat de zelfgehoste RustDesk-server doet
RustDesk is opgesplitst in twee processen. hbbs is de ID- en rendezvous-server waar clients zich bij registreren, en hbbr is de relay die de sessie afhandelt wanneer een directe peer-to-peer-verbinding mislukt. Geen van beide draait een desktopomgeving. Beide zijn afkomstig uit één image, en dit is het compose-bestand dat het project publiceert, waarbij het relay-adres is gewijzigd naar uw eigen hostnaam:
services:
hbbs:
container_name: hbbs
image: rustdesk/rustdesk-server:latest
command: hbbs -r rustdesk.example.com:21117
ports:
- 21115:21115
- 21116:21116
- 21116:21116/udp
- 21118:21118
volumes:
- ./data:/root
restart: unless-stopped
hbbr:
container_name: hbbr
image: rustdesk/rustdesk-server:latest
command: hbbr
ports:
- 21117:21117
- 21119:21119
volumes:
- ./data:/root
restart: unless-stoppedStart de container en lees vervolgens de publieke sleutel die de server bij de eerste start heeft gegenereerd:
sudo docker compose up -d
sudo cat ./data/id_ed25519.pubElke client heeft uw hostnaam en die publieke sleutel nodig; beide voert u in onder de netwerkinstellingen in de RustDesk-client. De bijbehorende privésleutel blijft in ./data/id_ed25519 staan. Als u de datamap verwijdert, genereert de server een nieuw paar, waardoor elke client opnieuw moet worden geconfigureerd met de nieuwe sleutel. Maak een back-up van die map. Als dit de manier wordt waarop uw team elke machine bereikt in plaats van een experiment in het weekend, is een specifieke build van de RustDesk-relay het overwegen waard vanwege de Ed25519-sleutelafhandeling, het vastzetten van image-tags in plaats van latest, en de relay-bandbreedte waarvoor uw abonnement uiteindelijk betaalt.
De firewall moet deze poorten direct toestaan. hbbs gebruikt TCP 21115, 21116 en 21118, plus UDP 21116. hbbr gebruikt TCP 21117 en 21119.
sudo ufw allow 21115/tcp
sudo ufw allow 21116/tcp
sudo ufw allow 21116/udp
sudo ufw allow 21117/tcp
sudo ufw allow 21118/tcp
sudo ufw allow 21119/tcpWaarom RustDesk niet achter nginx of Traefik kan draaien
Lezers die al hun TLS-verkeer beëindigen bij één reverse proxy proberen dit vaak, maar zonder succes. hbbs en hbbr gebruiken hun eigen binaire protocollen over TCP en UDP, niet HTTP. Er is geen Host-header om op te routeren en geen HTTP-verzoek om te inspecteren, waardoor een nginx server-blok of een Traefik HTTP-router geen aanknopingspunten heeft. De UDP-listener op 21116 is op geen enkele laag een HTTP-gebaseerd proces.
Twee methoden werken wel. nginx kan de TCP-poorten doorsturen met een stream-blok; dit is eenvoudige layer 4-doorsturing in plaats van een reverse proxy in de gebruikelijke zin. De poorten 21118 en 21119 verwerken daarnaast de websockets die door de RustDesk-webclient worden gebruikt; dit is regulier HTTP-verkeer, dus deze twee kunnen wel achter uw proxy worden geplaatst. Als u dit doet, voeg dan firewallregels toe zodat alleen de proxy poorten 21118 en 21119 kan bereiken, omdat hbbs vertrouwt op de X-Real-IP-header bij websocket-verbindingen om het werkelijke clientadres te achterhalen.
Een wegwerpbrowser in een container
Soms wilt u enkel een schone browser met een vast IP-adres, volledig gescheiden van uw eigen machine. Een container-werkruimte biedt dit met aanzienlijk minder geïnstalleerde software. Webtop van LinuxServer is de lichtgewicht optie:
services:
webtop:
image: lscr.io/linuxserver/webtop:latest
container_name: webtop
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
volumes:
- /path/to/data:/config
ports:
- 127.0.0.1:3000:3000
- 127.0.0.1:3001:3001
shm_size: "1gb"
restart: unless-stoppedPoort 3000 bedient HTTP en 3001 bedient HTTPS; u opent de desktop in een browsertabblad zonder dat er een RDP-client nodig is. De image-tags ondersteunen XFCE, KDE, MATE en i3 op diverse basisdistributies. De documentatie van het project is helder over het risico: de container heeft bevoorrechte toegang tot de host en bevat een terminal met wachtwoordloze sudo, waardoor deze niet onbeschermd aan het internet mag worden blootgesteld. Daarom zijn de bovenstaande poorten gebonden aan 127.0.0.1 in plaats van gepubliceerd op alle adressen. Benader deze via dezelfde SSH-tunnel of VPN die u voor xrdp gebruikte.
Kasm Workspaces hanteert hetzelfde concept op veel grotere schaal, met een webconsole, gebruikersaccounts en containers per sessie die worden gereset zodra de sessie eindigt. Dit vereist meer rekenkracht dan een kleine VPS biedt. Sinds augustus 2026 is de gedocumenteerde minimale vereiste 2 CPU-cores, 4 GB geheugen en 50 GB SSD, waarbij elke gebruikerssessie standaard nog eens 2 cores en 2768 MB extra verbruikt. Een plan met 2 GB geheugen is hiervoor onvoldoende. De installatie bestaat uit een download en een script:
cd /tmp
curl -O https://kasm-static-content.s3.amazonaws.com/kasm_release_1.17.0.7f020d.tar.gz
tar -xf kasm_release_1.17.0.7f020d.tar.gz
sudo bash kasm_release/install.shVNC, en waar het nog steeds van pas komt
VNC verstuurt framebuffer-updates in plaats van tekencommando's. Hierdoor voelt het op een trage verbinding zwaarder aan dan RDP en ontbreekt ondersteuning voor geluid. Het is in één situatie nuttig: wanneer u een desktopsessie wilt die actief blijft na het verbreken van de verbinding, en u bij terugkeer dezelfde sessie wilt hervatten. TigerVNC biedt deze functionaliteit. vncserver -localhost yes :1 koppelt Xvnc aan 127.0.0.1 op TCP 5901 en weigert verbindingen van andere locaties. U tunnelt dit daarom op exact dezelfde wijze als xrdp met ssh -N -L 5901:127.0.0.1:5901 you@vps.example.com. Stel een VNC-poort nooit openbaar bloot. De meeste VNC-servers beveiligen het wachtwoord alleen tijdens de handshake en daarna niet meer. Bij een openbare poort is de inhoud van de sessie daardoor leesbaar over het netwerk.
Is een VPS geschikt als desktop?
Als dagelijks systeem is het antwoord nee, en daar zijn diverse redenen voor. Er is geen GPU aanwezig, waardoor de CPU alle grafische taken moet uitvoeren. Elke toetsaanslag wacht op een netwerk-round-trip; een latentie van 40 ms die in SSH prima aanvoelt, is in een teksteditor duidelijk merkbaar. Video wordt tweemaal gecomprimeerd: eerst door de website en daarna door de RDP-encoder. Uw bestanden staan op een schijf die u niet in eigen beheer heeft, en intensief desktopgebruik verbruikt een maandelijkse bandbreedte die is berekend op een webserver.
Als wegwerpmachine is het echter zeer geschikt, en dezelfde eigenschappen verklaren waarom. Het IP-adres is stabiel en behoort toe aan een datacenter, wat essentieel is wanneer een service een consistent adres vereist. De machine kan binnen enkele minuten vanaf een image worden hersteld, waardoor een sessie die besmet is geraakt u niets kost. Het is geïsoleerd van uw fysieke hardware en blijft actief wanneer uw laptop is gesloten. Dankzij de uurtarieven is een tijdelijke desktop goedkoop.
Als u nog aan het bepalen bent waarvoor de machine dient, is de praktische lijst met toepassingen waar een VPS goed in is het lezen waard voordat u er een desktopomgeving op installeert. En als de reden voor een desktop een specifieke Windows-applicatie is, overweeg dan eerst de werkelijke verschillen tussen Linux en Windows Server, aangezien de licentie de kosten van de oplossing beïnvloedt.
FAQ
Kan ik een remote desktop draaien op een 2 GB VPS?
Ja, met een lichtgewicht desktopomgeving. XFCE of LXQt verbruikt na het inloggen ongeveer 300 tot 400 MB, wat voldoende ruimte overlaat voor een browser met enkele tabbladen. GNOME of KDE Plasma op 2 GB laat vrijwel geen ruimte over voor applicaties. Voeg een swap-bestand van 2 GB toe zodat geheugendruk de machine vertraagt in plaats van processen te beëindigen. Als er onverwacht iets verdwijnt zonder foutmelding, controleer dan dmesg | grep -i "killed process" voor de kernel out-of-memory killer.
Moet ik poort 3389 openen op mijn VPS-firewall?
Nee. TCP 3389 wordt constant gescand en een blootgesteld RDP-inlogscherm nodigt uit tot het raden van wachtwoorden. Stel port=tcp://.:3389 in binnen /etc/xrdp/xrdp.ini zodat xrdp alleen op 127.0.0.1 luistert, bevestig dit met ss -tlnp | grep 3389 en benader de service via ssh -N -L 3389:127.0.0.1:3389 you@vps.example.com. Voor meer dan één of twee gebruikers kunt u xrdp beter binden aan een WireGuard-adres in plaats van aan de loopback-interface.
Waarom vraagt xrdp om "Authentication is required to create a color managed device"?
De colord-service vraagt polkit om toestemming, en polkit verleent die actie alleen stilzwijgend aan een lokaal actieve sessie. Een RDP-sessie wordt niet als lokaal beschouwd, waardoor u bij elke aanmelding een wachtwoordprompt krijgt. Op Ubuntu 24.04 werkt de oude .pkla-oplossing niet meer, omdat polkit 124 de lokale autorisatiebestanden niet langer ondersteunt. Maak /etc/polkit-1/rules.d/45-allow-colord.rules aan met een JavaScript-regel die polkit.Result.YES retourneert voor actie-ID's die beginnen met org.freedesktop.color-manager., en voer daarna sudo systemctl restart polkit uit.
Kan ik een zelfgehoste RustDesk-server achter nginx of Traefik plaatsen?
Niet de hoofdservice. hbbs en hbbr gebruiken hun eigen binaire protocollen in plaats van HTTP, waardoor er geen Host-header is om op te routeren, en UDP 21116 kan helemaal niet door een HTTP-proxy worden verwerkt. Open TCP 21115 tot en met 21119 en UDP 21116 op de firewall en laat clients rechtstreeks verbinding maken. De websocket-poorten 21118 en 21119, die door de webclient worden gebruikt, zijn HTTP-gebaseerd en kunnen achter een proxy worden geplaatst. Als u dit doet, beperk de toegang via de firewall zodat alleen de proxy deze poorten kan bereiken, aangezien hbbs X-Real-IP vertrouwt op die verbindingen.
Waarom heb ik geen geluid in mijn xrdp-sessie?
Ubuntu 24.04 gebruikt PipeWire, terwijl de geluidsomleiding van xrdp is gebouwd voor PulseAudio. Audio ontbreekt totdat u de bridge installeert. Voer sudo apt install -y pipewire-module-xrdp uit en log daarna volledig uit en weer in, omdat de module bij het starten van de sessie wordt geladen en een herverbinding deze niet opnieuw laadt. Controleer met pactl list short sinks of er een sink is genaamd xrdp, en zorg ervoor dat de client om audio verzoekt; dit is de /sound-vlag op xfreerdp3 of de optie "Remote audio" in de Windows-client.