At konfigurere fjernskrivebordsadgang på en Debian-server er ikke noget, jeg troede, jeg ville lave for tre år siden. Dengang var SSH nok til alt. Men arbejde hjemmefra ændrede det helt.
XRDP giver dig grafisk adgang til din Debian-server fra hvor som helst. Uanset om du fejlfinder hjemmefra eller skal vise en kollega noget visuelt, slår det at prøve at forklare terminalkommandoer over Slack.
Hvad er XRDP, og hvorfor bruge det til Debian-fjernskrivebordet?

XRDP implementerer Microsofts Remote Desktop Protocol på Linux-systemer. I modsætning til VNC, som kræver sin egen klientsoftware, fungerer RDP med Windows' indbyggede Remote Desktop Connection.
Efterspørgslen efter fjernskrivebordsløsninger er eksploderet, og det globale marked for fjernskrivebordsoftware forventes at nå $11,98 milliarder inden 2032. Det afspejler, hvor almindeligt fjernadgang er blevet.
Her er grunde til, at jeg foretrækker XRDP frem for alternativer:
- Fungerer med Windows' indbyggede RDP-klient
- Krypterer forbindelser som standard
- Understøtter flere samtidige brugere
- Bruger mindre båndbredde end de fleste VNC-implementeringer
- Håndterer udklipsholder og fildeling rimeligt godt
Debian kører på 96,3% af topwebservere, og kontrollerer 16% af Linux-servermarkedet. Sådan udbredt brug betyder masser af dokumentation, når tingene går galt.
Systemkrav til Debian RDP-server
Du skal have nogle få ting før start:
- Debian 10, 11 eller 12
- Mindst 2GB RAM (jeg lærte det, da min 1GB-instans holdt op med at fungere)
- Root- eller sudo-adgang
- Netværksforbindelse til downloads
- 2GB free disk space minimum
Til cloud-setups fungerer Debian VPS godt. Jeg har testet det på DigitalOcean-droplets og Linode-instanser uden problemer.
Sådan opdaterer du Debian før XRDP-installation

Opdater altid først. Jeg brugte engang to timer på at debugge pakkekonflikter, som en simpel opdatering ville have forhindret.
sudo apt update && sudo apt upgrade -y
Dette henter de seneste pakkeoplysninger og anvender sikkerhedspatch. Flaget -y springer bekræftelsesprompter over.
Sådan installerer du et skrivebordsmiljø til XRDP på Debian

De fleste Debian-servere kører uden grafik. Du har brug for et skrivebordsmiljø til XRDP for at få det til at fungere ordentligt.
sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils -y
Jeg bruger Xfce fordi det er lettvægt og stabilt over fjernforbindelser. GNOME virker også, men bruger flere ressourcer. Pakken xfce4-goodies tilføjer praktiske funktioner som lommeregner og teksteditor.
Trin-for-trin XRDP-installation på Debian-server

Installer XRDP fra Debian's repositories:
sudo apt install xrdp -y
Kontroller, om det startede korrekt:
sudo systemctl status xrdp
Du bør se aktiv (kører) i grønt. Hvis ikke, gik noget galt under installationen.
Sådan konfigurerer du XRDP-indstillinger og brugersessioner på Debian

XRDP kræver nogle justeringer for at fungere problemfrit. Standardkonfigurationen forårsager problemer, som jeg er stødt på flere gange.
Konfigurering af brugersessioner til Debian XRDP
Opret en sessionsfil for hver bruger, der har brug for RDP-adgang:
echo "xfce4-session" > ~/.xsession
Uden denne fil får du et tomt skrivebord efter login. Det tog mig evigheder at finde ud af første gang.
Sådan føjer du XRDP-bruger til SSL-Cert-gruppen
XRDP har brug for adgang til SSL-certifikater for sikre forbindelser:
sudo adduser xrdp ssl-cert
Genstart af XRDP-tjeneste efter ændringer
Genstart tjenesten for at anvende konfigurationsændringer:
sudo systemctl restart xrdp
Åbn port 3389 for RDP på Debian

RDP bruger port 3389. Du skal åbne denne port i din firewall, mens du holder alt andet lukket.
Sikker RDP-adgang med UFW Firewall på Debian
UFW (Uncomplicated Firewall) er enklere til grundlæggende opsætninger:
sudo ufw allow 3389/tcp
For bedre sikkerhed kan du begrænse adgangen til din IP-adresse:
sudo ufw allow from YOUR_IP_ADDRESS to any port 3389
Udskift YOUR_IP_ADDRESS med din faktiske offentlige IP-adresse.
Brug nftables til XRDP firewall-regler
Hvis du bruger nftables i stedet for UFW:
sudo nft add rule inet filter input tcp dport 3389 ct state new, established counter accept
Jeg foretrækker UFW til de fleste situationer, men nftables giver dig mere præcis kontrol, hvis du har brug for det.
Rediger XRDP.ini for sikkerhed og ydeevne
Standard-opsætningen af XRDP virker til grundlæggende adgang, men du vil måske tilpasse forbindelses-indstillingerne eller sikkerhedsparametre.
Rediger hovedkonfigurationsfilen:
sudo nano /etc/xrdp/xrdp.ini
Vigtige indstillinger at overveje:
- security_layer=tls – Tvinger TLS-kryptering
- crypt_level=high – Maksimalt krypteringsniveau
- port=3389 – Skift denne for at køre på en anden port
Konfigurering StartWM.sh til stabile XRDP-sessioner
Sessionsstartskriptet styrer, hvad der sker, når brugere opretter forbindelse:
sudo nano /etc/xrdp/startwm.sh
Tilføj disse linjer til sidst for at undgå almindelige sessionsproblemer:
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
exec startxfce4
Disse miljøvariabler kan forstyrre opstart af skrivebordssessioner. Jeg stødte på dette problem, da jeg forsøgte at køre programmer, der havde brug for D-Bus-kommunikation.
Forbind til Debian RDP-server
Når det er konfigureret, er forbindelsen ligefrem fra forskellige operativsystemer.
Forbind til Debian XRDP fra Windows
Windows inkluderer en RDP-klient som standard:
- Søg efter "Fjernbordsforbindelse"
- Angiv din servers IP-adresse
- Klik Forbind
- Angiv dit Debian brugernavn og adgangskode
- Vælg "Xorg", når du bliver spurgt om sessiontype
Forbindelsen etableres normalt inden for få sekunder på et lokalt netværk.
Sådan forbinder du til Debian XRDP fra Linux (med Remmina)
Installer Remmina, som håndterer RDP-forbindelser godt:
sudo apt install remmina remmina-plugin-rdp
Remmina tilbyder en GUI til at administrere flere fjernforbindelser. Du kan gemme forbindelsesprofiler og justere skærmindstillinger pr. forbindelse.
Bedste praksis til at sikre Debian RDP-server

RDP har betydelige sikkerhedskonsekvenser. Cyberkriminelle misbruger RDP i 90% af angreb håndteres af incidentsvarsteams.
Sådan aktiverer du TLS-kryptering for XRDP på Debian
Generer selv-signerede certifikater til krypterede forbindelser:
sudo mkdir -p /etc/xrdp/certs
cd /etc/xrdp/certs
sudo openssl req -x509 -newkey rsa:2048 -nodes -keyout key.pem -out cert.pem -days 365
Dette opretter certifikater, der er gyldige i et år. Brug et ordentligt CA-certifikat i produktionsmiljøer.
Sådan konfigurerer du SSH-tunnel for RDP på Debian
For maksimal sikkerhed skal du tunnel RDP gennem SSH:
ssh -L 3389:localhost:3389 user@your-debian-server
Derefter forbind til localhost:3389 i stedet for serverens offentlige IP. Dette krypterer al RDP-trafik gennem SSH-tunnelen.
Skift XRDP-port fra 3389 til brugerdefineret port
Skift standardporten for at reducere automatiserede angrebsforsøg:
sudo nano /etc/xrdp/xrdp.ini
Ændring port=3389 til noget lignende port=13389, og genstart derefter XRDP. Husk at opdatere dine firewall-regler i overensstemmelse hermed.
Fejlfinding af XRDP-problemer på Debian

Der opstår regelmæssigt flere problemer med XRDP-installationer.
Sådan løser du kompatibilitetsproblemer mellem Wayland og XRDP
XRDP fungerer ikke korrekt med Wayland-displayservere. Tving systemet til at bruge Xorg:
sudo nano /etc/gdm3/custom.conf
Fjern kommentartegnet fra denne linje:
WaylandEnable=false
Waylands sikkerhedsmodel er i konflikt med, hvordan XRDP får adgang til displaysystemet. Dette vil ikke blive løst på kort sigt.
Konfiguration af flere brugersessioner i XRDP
Hver bruger har brug for sin egen sessionskonfiguration:
echo "xfce4-session" | sudo tee /home/username/.xsession
sudo chown username: username /home/username/.xsession
Udskift username med det faktiske brugernavn. Uden korrekt ejerskab fungerer sessionsfilen ikke.
Sådan optimerer du XRDP-hastighed på langsomme forbindelser

Flere justeringer forbedrer RDP-ydeevnen, især over langsommere forbindelser:
- Brug Xfce i stedet for GNOME eller KDE
- Deaktiver skrivebordanimationer og effekter
- Reducer skærmopløsningen for fjernforbindelsessessioner
- Aktivér komprimering i din RDP-klient
- Overvej Ubuntu VPS or Fedora VPS hvis Debian ikke opfylder dine krav
Den største ydelsesforbedring kommer fra at vælge et let skrivebordsmiljø. GNOME kan bruge 500 MB+ RAM blot til skrivebordet, mens Xfce bruger omkring 200 MB.
Debian XRDP-opsætningsvideo [Installér XRDP til ekstern skrivebord-server]
Konklusion
XRDP omdanner en headless Debian-server til noget, du kan administrere grafisk fra hvor som helst. Opsætningsprocessen har nogle særheder, men når den først virker, er den ganske pålidelig.
Til produktionsudrulninger kan du overveje administrerede løsninger som Køb RDP tjenester, der håndterer kompleksiteten for dig.
Hold dit system opdateret og overvåg adgangslogs regelmæssigt. Hvis du sammenligner distributioner, kan du tjekke Debian mod Ubuntu for at se, hvilken der passer bedre til dine krav.