Un serveur Linux n'a pas d'écran, et la plupart du temps il n'en a pas besoin. Parfois si : un navigateur qui doit tourner depuis l'adresse du serveur, un outil uniquement graphique, ou un bureau que vous laissez ouvert et retrouvez depuis n'importe quel ordinateur. Ce guide ajoute à Ubuntu 24.04 le bureau léger XFCE et xrdp, pour l'ouvrir avec la même application Bureau à distance que pour un serveur Windows.
Nous avons testé chaque étape sur notre image Ubuntu 24.04. Deux réglages par défaut ont fait échouer le premier essai, et nous corrigeons les deux ci-dessous. Il vous faut un utilisateur normal avec sudo ; le guide de configuration d'Ubuntu en crée un. Dans les exemples, il s'appelle deploy.
1. Installer XFCE et xrdp
sudo apt update
sudo apt install -y xfce4 xfce4-goodies xrdp
Sur notre serveur de 2 Go, cela a pris environ quatre minutes et demie et 1,7 Go de disque (2,7 Go utilisés avant, 4,4 Go après). Cela installe xrdp 0.9.24, qui démarre tout de suite et écoute sur le port 3389.
2. Faire démarrer XFCE par xrdp, pas GNOME
Connectez-vous avec l'utilisateur qui utilisera le bureau et lancez :
echo xfce4-session > ~/.xsession
Sans ce fichier, notre première connexion a lancé GNOME au lieu de XFCE, et la session est morte aussitôt avec « Oh no! Something has gone wrong ». Les paquets de l'étape 1 installent aussi le gestionnaire de session de GNOME, et Ubuntu en fait le choix par défaut. Avec ~/.xsession en place, xrdp lance XFCE.
3. Laisser xrdp utiliser TLS
xrdp tourne sous son propre utilisateur xrdp, qui ne peut pas lire la clé privée du serveur. Notre première connexion a fonctionné, mais /var/log/xrdp.log montrait pourquoi il ne fallait pas s'y fier :
Cannot read private key file /etc/xrdp/key.pem: Permission denied
Non-TLS connection established from ::ffff:127.0.0.1
Sans la clé, xrdp se rabat sur l'ancien chiffrement RDP au lieu de TLS. Donnez-lui l'accès et redémarrez :
sudo adduser xrdp ssl-cert
sudo systemctl restart xrdp
La connexion suivante apparaissait dans notre journal sous la forme TLS connection established ... TLSv1.3. Vous pouvez vérifier la vôtre de la même façon :
sudo grep -E "TLS connection|Non-TLS" /var/log/xrdp.log | tail -2
4. Garder le port 3389 hors d'Internet
Une fois installé, xrdp écoute sur toutes les adresses. Contrairement à Windows, xrdp n'a pas de Network Level Authentication : quiconque atteint le port obtient un écran de connexion où deviner des mots de passe. Faites-le écouter uniquement sur le serveur lui-même :
sudo sed -i 's|^port=3389$|port=tcp://127.0.0.1:3389|' /etc/xrdp/xrdp.ini
sudo systemctl restart xrdp
ss -ltn | grep 3389
La dernière ligne doit afficher 127.0.0.1:3389. Dans notre test, une connexion directe à l'adresse du serveur sur le 3389 était ensuite refusée, et le tunnel de l'étape suivante fonctionnait toujours.
5. Se connecter par SSH
Sur votre ordinateur, ouvrez un tunnel. Sous Windows, PowerShell dispose de la même commande ssh :
ssh -L 13389:localhost:3389 deploy@YOUR.SERVER.IP
Sur une offre NAT, ajoutez -p et le port SSH personnel de votre tableau de bord. Laissez cette fenêtre ouverte. Puis pointez votre application de Bureau à distance vers localhost:13389 et connectez-vous en deploy avec le mot de passe de cet utilisateur :
- Windows : Connexion Bureau à distance (
mstsc). - macOS : Windows App, depuis l'App Store.
- Linux : Remmina, ou
xfreerdp /v:localhost:13389 /u:deploy.
Le port local est 13389 et non 3389, car le 3389 peut déjà être pris sur votre ordinateur par son propre Bureau à distance. La première fois, l'application signale un certificat qu'elle ne connaît pas. C'est le certificat auto-signé du serveur, et la connexion est de toute façon chiffrée dans SSH.
6. Ce que vous obtenez
Vous obtenez un bureau XFCE avec un panneau, un gestionnaire de fichiers et un terminal. Sur notre serveur, une session a ajouté environ 360 Mo de RAM : 388 Mo utilisés avant la connexion, 747 Mo pendant la session.
Fermer la fenêtre de Bureau à distance ne vous déconnecte pas. Dans notre test, une commande longue a continué après la déconnexion. En nous reconnectant, xrdp nous a remis dans la même session (reconnected session ... display :10 dans son journal). Pour vraiment fermer la session, utilisez Log Out dans le menu XFCE.
Quelle offre
Le bureau a besoin de RAM plus que de CPU. Micro (2 vCPU, 2 Go, 25 Go, $5/mois) fait tourner XFCE et des outils légers sans peine. Si vous comptez garder un navigateur ouvert dans la session, prenez Small avec 4 vCPU et 4 Go pour $8/mois. Ce sont deux offres NAT, et ce n'est pas un problème ici : le Bureau à distance passe par votre port SSH.
Si vous avez en fait besoin de logiciels Windows, un VPS Windows les fait tourner directement, et Windows-Small commence à $11/mois. Ubuntu 24.04 figure sur la page Ubuntu VPS et sur toutes les offres Linux de la section VPS. Le paiement se fait en USDT, USDC ou ETH sur Base, Ethereum ou Polygon.
Commentaires
Pas encore de commentaires. Soyez le premier.