Post

RustDesk Linux - bureau à distance open source

RustDesk Linux - bureau à distance open source

Installez et exécutez RustDesk sur Linux : .deb, .rpm, Flatpak et AppImage, X11 face à Wayland, accès headless et sans surveillance, et auto-hébergement du serveur.

RustDesk pour Linux : le bureau à distance open source

Les utilisateurs de Linux n’ont jamais eu un grand choix de bons outils de bureau à distance, et ceux qui existent sont généralement soit des produits commerciaux à code source fermé, soit des piles VNC vieillissantes. RustDesk se démarque : c’est un client de bureau à distance open source sous licence AGPL, qui fonctionne nativement sur toutes les principales distributions, et que vous pouvez connecter à un serveur que vous hébergez vous-même. Cette combinaison — code auditable, client Linux natif et infrastructure auto-hébergeable — explique pourquoi RustDesk est devenu l’une des réponses de référence lorsqu’on cherche un bureau à distance open source pour Linux.

Ce guide explique comment l’installer, le point qui pose problème à presque tout le monde (X11 face à Wayland), comment faire fonctionner l’accès sans surveillance et headless, et quelle est la place du serveur dans tout cela.

Installer RustDesk sur Linux

RustDesk propose des paquets pour tous les formats de paquetage Linux courants, donc vous avez rarement besoin de compiler depuis les sources. Récupérez la version actuelle depuis la page des versions RustDesk sur GitHub ou depuis la documentation d’installation Linux, puis choisissez le format adapté à votre distribution.

Format Idéal pour Démarre automatiquement un service ? Notes
.deb Debian, Ubuntu, Linux Mint Oui (systemd) sudo apt install ./rustdesk-*.deb
.rpm Fedora, RHEL/CentOS, openSUSE Oui (systemd) sudo dnf install ./rustdesk-*.rpm
Flatpak Toutes distributions, isolé (sandboxé) Non flatpak install flathub com.rustdesk.RustDesk (Flathub)
AppImage Toutes distributions, portable Non Peut nécessiter libfuse2 sur les versions récentes d’Ubuntu ; faites chmod +x puis exécutez
AUR Arch, Manjaro Selon le paquet Maintenu par la communauté (rustdesk-bin, rustdesk-appimage)

Les paquets .deb et .rpm sont ceux à privilégier si vous voulez que RustDesk s’exécute en arrière-plan comme un service qui survit aux redémarrages — les deux enregistrent et démarrent automatiquement une unité systemd. Le Flatpak (com.rustdesk.RustDesk sur Flathub) est une version isolée (sandboxée), pratique pour un usage bureautique, mais qui n’installe pas de service système par défaut. Pour une distribution que RustDesk ne package pas directement, privilégiez d’abord le Flatpak — comme il embarque son propre runtime, c’est généralement le format le plus largement compatible. L’AppImage est une alternative portable en un seul fichier, mais sa compatibilité est plus aléatoire en pratique (elle peut par exemple nécessiter libfuse2 sur les versions récentes d’Ubuntu).

En pratique, RustDesk est utilisé sur Ubuntu, Debian, Fedora, RHEL/CentOS, openSUSE, Arch et NixOS, avec des versions compilées pour x86_64, ARM64 (aarch64) et ARM32 (ARMv7) — il fonctionne donc aussi bien sur des cartes et serveurs ARM que sur des PC standards.

X11 face à Wayland : la partie qui compte vraiment

C’est l’élément le plus important à comprendre à propos de RustDesk sur Linux, car il détermine si le contrôle à distance « fonctionne tout simplement » d’entrée de jeu, ou s’il nécessite d’abord un petit réglage.

X11 (Xorg) : la voie de capture la plus directe, là où votre distribution la propose encore. Sous X11, RustDesk lit directement le framebuffer et injecte directement les entrées : la capture ainsi que le contrôle de la souris et du clavier sont donc aussi directs que possible, et les changements de moniteur sont détectés dynamiquement. De nombreux gestionnaires de connexion permettent encore de choisir « Xorg »/« X11 » via l’icône en forme de roue dentée affichée à l’écran de connexion. Gardez toutefois à l’esprit que plusieurs distributions migrent désormais exclusivement vers Wayland et suppriment la session X11 — considérez donc X11 comme une commodité disponible par endroits, et non comme une base sur laquelle concevoir votre déploiement.

Wayland : RustDesk offre sans doute la meilleure prise en charge de tous les outils de bureau à distance. RustDesk prend en charge Wayland depuis la version 1.2.0 et n’a cessé de l’étendre depuis. Comme les compositeurs Wayland n’autorisent pas l’accès direct au framebuffer, RustDesk capture l’écran via le service xdg-desktop-portal et PipeWire, et injecte les entrées via le module noyau uinput. Deux conséquences découlent de la conception même de Wayland — et elles s’appliquent à tout outil de partage d’écran sous Wayland, pas seulement à RustDesk :

  • Consentement à chaque connexion. Le portail affiche une boîte de dialogue vous demandant de choisir l’écran à partager. Il s’agit d’une fonctionnalité de sécurité délibérée de Wayland, pas d’un bug de RustDesk — une application en arrière-plan ne peut pas se mettre à enregistrer votre écran en silence. Le portail v4 et les versions ultérieures prennent en charge un « jeton de restauration » (restore token) pour éviter d’être sollicité à chaque fois, mais le tout premier partage nécessite un clic à l’écran.
  • Session active uniquement. La capture Wayland est liée à la session graphique où l’utilisateur est connecté. La capture de l’écran de connexion (greeter) Wayland n’est pas encore prise en charge — elle est en cours de développement actif (PR #15420). Pour un accès avant connexion dès aujourd’hui, configurez l’écran de connexion du gestionnaire d’affichage afin qu’il utilise X11/Xorg lorsque cela est pris en charge.

La prise en charge de Wayland continue de s’améliorer — RustDesk 1.4.3 (octobre 2025) a par exemple ajouté le partage multi-écrans pour Wayland. Mais si vous vous connectez et voyez un écran noir sur une machine Wayland, c’est presque toujours parce que le chemin portail/PipeWire n’est pas satisfait. Notre article dédié RustDesk connecté mais en attente d’image détaille spécifiquement le cas de l’écran noir sous Wayland.

Accès sans surveillance sur Linux

L’accès sans surveillance consiste à se connecter à une machine sans personne devant l’écran — le scénario classique du support à distance. Sous Linux, la marche à suivre est la suivante :

  1. Installez via .deb ou .rpm afin que le service systemd soit enregistré, ou cliquez sur Activer le service dans l’application.
  2. Dans RustDesk, définissez un mot de passe permanent robuste dans les paramètres de connexion (et activez idéalement l’authentification à deux facteurs).
  3. Pour un accès avant ou entre les connexions utilisateur, configurez l’écran de connexion du gestionnaire d’affichage lui-même pour utiliser X11/Xorg lorsque cela est pris en charge ; choisir une session de bureau X11 ne concerne que la session après connexion.

Une réalité de Wayland à anticiper : le portail basé sur le consentement décrit dans la section Wayland rend la capture totalement sans surveillance plus difficile que sous X11, tant que la prise en charge en développement n’est pas disponible.

Linux headless : des serveurs sans moniteur

Un cas d’usage très courant sous Linux est celui d’une machine sans aucun écran connecté — un serveur personnel, une machine de laboratoire, une VM. Ici, le problème ne vient pas de RustDesk mais de la pile graphique : sans moniteur branché, X ou Wayland n’alloue jamais de framebuffer, il n’y a donc littéralement aucune image à capturer, d’où l’écran noir.

Deux manières de lui donner quelque chose à afficher :

  • Un faux connecteur (dummy plug) — un petit adaptateur HDMI/DisplayPort « headless » bon marché qui fait croire au GPU qu’un moniteur est branché.
  • Un pilote d’affichage virtuelxserver-xorg-video-dummy sous X11, ou une option au niveau du noyau comme VKMS.

Auto-héberger le serveur RustDesk sur Linux

Tout ce qui précède concerne le client. L’autre moitié de l’histoire de RustDesk sous Linux, c’est que le serveur — le service hbbs pour l’ID/rendez-vous et le relais hbbr — est une application native de Linux, qui est son environnement naturel. C’est ce qui vous permet de garder la négociation des sessions et le trafic relayé sur une infrastructure que vous possédez, plutôt que de les faire transiter par le cloud d’un fournisseur.

Vous avez deux options. Le serveur communautaire, gratuit et open source, fonctionne indéfiniment sans frais et couvre la fonction de base de connexion et de relais. RustDesk Server Pro ajoute une console web auto-hébergée, des groupes d’appareils, un carnet d’adresses partagé, un générateur de client à votre marque, ainsi que LDAP/Active Directory et le SSO OIDC. Vous n’êtes pas non plus obligé de passer par Docker — consultez exécuter Server Pro sans Docker pour une installation sur simple VM ou serveur physique. Si vous dimensionnez le matériel pour un grand parc de machines, planifiez la capacité en fonction de votre profil réel de concurrence et de relais avant de vous engager.

Une remarque sur l’auto-hébergement : le serveur communautaire gratuit et Server Pro sont à vous de faire fonctionner, de corriger et de sécuriser. Les exigences matérielles sont faibles et, une fois la mise en place effectuée, la maintenance reste légère — et le support RustDesk peut vous aider en cas de question. Cette maîtrise est précisément tout l’intérêt de la démarche. (La licence de Server Pro nécessite également un accès sortant vers rustdesk.com pour s’activer et rester valide.)

Quel paquet Linux utiliser ?

| Situation | Meilleur paquet | | —————————————– | ———————— | | Distributions basees sur Ubuntu ou Debian | .deb | | Distributions basees sur Fedora ou CentOS | .rpm | | Arch Linux ou Manjaro | .pkg.tar.zst | | openSUSE | .rpm specifique a SUSE | | Usage portable en fichier unique | AppImage | | Installation desktop en sandbox | Flatpak |

Reponses rapides pour Linux

  • Utilisez de preference le paquet natif de votre distribution.
  • Le support Wayland reste experimental depuis RustDesk 1.2.0.
  • Pour l’acces distant a l’ecran de connexion, utilisez toujours X11.
  • Si SELinux est en mode enforcing et que vous voyez avc: denied, suivez le guide SELinux de RustDesk.

Ubuntu (≥ 18)

1
2
# veuillez ignorer le rapport d'utilisation du disque erroné
sudo apt install -fy ./rustdesk-<version>.deb

Pour Ubuntu 18.04, veuillez d’abord faire ce qui suit pour pipewire.

1
2
3
sudo apt install software-properties-common
sudo add-apt-repository ppa:pipewire-debian/pipewire-upstream
sudo apt update

CentOS/Fedora (≥ 28)

1
sudo yum localinstall ./rustdesk-<version>.rpm

Arch Linux/Manjaro

1
sudo pacman -U ./rustdesk-<version>.pkg.tar.zst

openSUSE (≥ Leap 15.0)

1
sudo zypper install --allow-unsigned-rpm ./rustdesk-<version>-suse.rpm

AppImage

1
2
3
# Pour Fedora
sudo yum install libnsl
./rustdesk-<version>.AppImage
1
2
3
# Pour Ubuntu
sudo yum install libfuse2
./rustdesk-<version>.AppImage
1
2
# Archlinux
yay -S rustdesk-appimage

Flatpak

1
2
3
flatpak --user remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak --user install ./rustdesk-<version>.flatpak
flatpak run com.rustdesk.RustDesk

RustDesk Server OSS

Pour la plupart des nouveaux déploiements RustDesk Server OSS, Docker est la voie la plus rapide. N’utilisez une installation Linux native que si vous voulez explicitement des services système ou une configuration d’hôte gérée à la main.

Points clés

  • Les clients ont besoin de la valeur ID Server
  • Les clients ont besoin de la Key publique du serveur
  • Un API Server n’est nécessaire que si vous utilisez des fonctions Pro

Pare-feu

Si vous avez UFW installé, utilisez les commandes suivantes pour configurer le pare-feu :

1
2
3
4
ufw allow 21114:21117/tcp
# ufw allow 21118:21119/tcp
ufw allow 21116/udp
sudo ufw enable
Warning Lorsque WebSocket est activé (les ports `21118`/`21119` sont ouverts pour le [client web](https://rustdesk.com/web/)), `hbbs`/`hbbr` font confiance aux en-têtes `X-Real-IP` / `X-Forwarded-For` des connexions WebSocket entrantes pour déterminer l’adresse IP réelle du client, afin que celle-ci soit conservée lorsque le trafic WebSocket passe par un reverse proxy ([WSS](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/faq/#8-add-websocket-secure-wss-support-for-the-id-server-and-relay-server-to-enable-secure-communication-for-all-platforms)). Ces en-têtes ne sont pas validés : quiconque peut atteindre directement `21118`/`21119` peut usurper une adresse IP arbitraire avec des en-têtes falsifiés, contourner la limitation de débit et le blocage basés sur l’IP, et falsifier les adresses IP enregistrées dans les journaux. Si vous utilisez le client web, n’exposez les ports WebSocket qu’à travers un reverse proxy qui définit lui-même `X-Real-IP`, et restreignez `21118`/`21119` avec des règles de pare-feu afin que seul le reverse proxy puisse s’y connecter. Si vous n’utilisez pas le client web, laissez les ports `21118` et `21119` fermés.

Serveur en tant que service systemd

Installer votre propre serveur en tant que service systemd en utilisant un fichier deb pour les distributions debian

Veuillez télécharger les fichiers deb vous-même et les installer avec apt-get -f install <filename>.deb ou dpkg -i <filename>.deb.

1
2
3
wget https://github.com/rustdesk/rustdesk-server/releases/download/1.1.16/rustdesk-server-hbbr_1.1.16_amd64.deb
wget https://github.com/rustdesk/rustdesk-server/releases/download/1.1.16/rustdesk-server-hbbs_1.1.16_amd64.deb
sudo dpkg -i *.deb

Pour autoriser le serveur RustDesk sur ufw :

1
2
sudo ufw allow 21114:21117/tcp
sudo ufw allow 21116/udp

Pour que le client Rustdesk puisse utiliser le relais, il faut lui donner 2 choses :

  1. Adresse IP du serveur relais : 164.132.198.38
  2. Clé publique contenue dans /var/lib/rustdesk-server/id_ed25519.pub

Configurer le client

Dans RustDesk Client cliquez sur le bouton Menu [ ⋮ ] à côté de votre ID puis cliquez sur Réseau, vous pouvez maintenant déverrouiller les paramètres à l’aide de privilèges surélevés et définir votre ID, Relay, APIet Key. Il est important de noter que Key`est la clé publique utilisée pour le cryptage de connexion.

Entrez le hbbsadresse hôte ou IP dans la zone de saisie du serveur d’ID (côté local + côté distant). Les deux autres adresses peuvent être laissées en blanc, RustDesk déduira automatiquement (si ce n’est pas spécialement défini), et le serveur de relais se réfère à hbbr(port 21117).

Afin d’établir une connexion cryptée à votre serveur auto-hébergé, vous devez entrer sa clé publique. La clé est généralement générée lors de la première exécution de hbbset peut être trouvé dans le fichier id_ed25519.pubdans votre répertoire de travail / dossier de données: /var/lib/rustdesk-server/id_ed25519.pub

Cet article est sous licence CC BY 4.0 par l'auteur.