Accès distant sans surveillance avec RustDesk sur reComputer RK3576

#Introduction

RustDesk est un logiciel de bureau à distance open source. Pour les appareils Edge AI et AIoT installés sur des sites sans personnel, il permet de consulter le bureau du reComputer RK3576, de modifier la configuration des applications et de vérifier l’état de l’appareil à distance.

Ce guide installe RustDesk et configure l’environnement de connexion graphique X11 pour trois situations :

  • Afficher et contrôler le bureau lorsqu’une session est ouverte.
  • Se reconnecter avec un mot de passe permanent après le verrouillage, sans validation sur place.
  • Accéder à l’écran de connexion GDM après une déconnexion ou un redémarrage, puis ouvrir une session à distance.

Environnement testé : reComputer RK3576, Armbian (Debian 12 Bookworm), GNOME 43 / GDM3, RustDesk 1.2.3 (ARM64), écran de connexion GDM sous X11. Les étapes peuvent différer avec d’autres versions du système.

#Préparation

#Matériel

  • Un reComputer RK3576.
  • Un ordinateur Windows servant à établir la connexion.
  • Un accès réseau pour les deux ordinateurs et les services nécessaires à RustDesk.
  • Un écran HDMI et un clavier sont recommandés pour la configuration et les premiers tests.

#Logiciels

AppareilLogiciel / systèmeVersion utilisée
reComputer RK3576Armbian / Debian 12 BookwormDebian 12, ARM64
reComputer RK3576GNOME + GDM3 + XorgGNOME 43 / GDM3
reComputer RK3576RustDesk Linux ARM64 .deb1.2.3
Ordinateur WindowsClient RustDesk pour WindowsProgramme d’installation officiel Windows x86-64

RustDesk 1.2.3 correspond à la version testée sur l’appareil. Si vous utilisez une autre version, vérifiez à nouveau l’accès avant l’ouverture de session.

Ressources officielles :

#Installation

#Étape 1 : Télécharger le paquet ARM64 sur le RK3576

Connectez-vous au RK3576 en SSH et vérifiez le système et l’architecture :

bash
cat /etc/os-release
dpkg --print-architecture

L’appareil testé utilise arm64. Choisissez le paquet Linux AArch64/ARM64 .deb, et non un programme Windows ou x86-64. Téléchargez rustdesk-1.2.3-aarch64.deb depuis la version officielle 1.2.3, ou exécutez :

bash
cd ~
wget https://github.com/rustdesk/rustdesk/releases/download/1.2.3/rustdesk-1.2.3-aarch64.deb

Vérifiez le fichier téléchargé :

bash
ls -lh rustdesk-1.2.3-aarch64.deb
dpkg-deb --info rustdesk-1.2.3-aarch64.deb

#Étape 2 : Installer RustDesk et démarrer son service

Dans le répertoire contenant le paquet :

bash
sudo apt update
sudo apt install ./rustdesk-1.2.3-aarch64.deb

Activez et démarrez le service :

bash
sudo systemctl enable --now rustdesk
systemctl status rustdesk --no-pager

État attendu :

text
Loaded: loaded (.../rustdesk.service; enabled; ...)
Active: active (running)

Vous pouvez également vérifier la version installée :

bash
dpkg -l | grep rustdesk

Un service actif ne prouve pas, à lui seul, que l’écran verrouillé ou l’écran de connexion est accessible. Effectuez la configuration X11 et les tests de connexion ci-dessous.

#Étape 3 : Configurer l’écran de connexion GDM sous X11

La documentation Linux de RustDesk indique que l’accès à l’écran de connexion après une déconnexion ou un redémarrage nécessite un écran de connexion X11. Sur l’installation Debian 12 testée, le fichier de configuration GDM3 est /etc/gdm3/daemon.conf.

Vérifiez d’abord la présence d’une session Xorg :

bash
ls /usr/share/xsessions/

L’image testée contient gnome-xorg.desktop. Si ce répertoire n’existe pas, ne poursuivez pas avant d’avoir vérifié que votre image propose une session graphique X11.

Sauvegardez et modifiez la configuration GDM :

bash
sudo cp /etc/gdm3/daemon.conf /etc/gdm3/daemon.conf.bak
sudo nano /etc/gdm3/daemon.conf

Dans la section [daemon], remplacez :

ini
#WaylandEnable=false

par :

ini
WaylandEnable=false

Vérifiez le réglage :

bash
grep '^WaylandEnable' /etc/gdm3/daemon.conf

Résultat attendu :

text
WaylandEnable=false

Redémarrez l’appareil :

bash
sudo reboot

Reconnectez-vous en SSH et listez les sessions :

bash
loginctl list-sessions

Relevez l’identifiant de session de Debian-gdm, puis remplacez <SESSION_ID> par cet identifiant :

bash
loginctl show-session <SESSION_ID> -p Name -p Type -p Class -p State

L’environnement testé a renvoyé :

text
Name=Debian-gdm
Type=x11
Class=greeter
State=active

Cela confirme que l’écran de connexion GDM fonctionne sous X11. L’identifiant de session peut changer après un redémarrage.

Si le bureau graphique ne fonctionne plus mais que SSH reste accessible, restaurez la sauvegarde avec sudo cp /etc/gdm3/daemon.conf.bak /etc/gdm3/daemon.conf, puis redémarrez. Ces étapes ne s’appliquent qu’à l’environnement Debian 12 testé où une session Xorg est disponible.

#Étape 4 : Obtenir l’identifiant RustDesk et définir un mot de passe permanent

Obtenez l’identifiant de l’appareil RK3576 en SSH :

bash
sudo rustdesk --get-id

Définissez un mot de passe permanent, robuste et distinct pour l’accès sans surveillance. Si une session graphique est ouverte, utilisez Settings → Security → Password → Use permanent password dans RustDesk. Vous pouvez aussi le définir en SSH :

bash
read -rsp 'New RustDesk password: ' RD_PASSWORD; echo
sudo rustdesk --password "$RD_PASSWORD"
unset RD_PASSWORD

La commande doit afficher Done!. Cette méthode évite d’enregistrer le mot de passe en clair dans l’historique du shell, mais les arguments de la commande peuvent être brièvement visibles par des processus locaux disposant des droits appropriés. Respectez la politique de gestion des identifiants de votre déploiement.

Ne publiez pas de véritable identifiant d’appareil, de mot de passe permanent ni de compte client dans les captures d’écran. Masquez l’identifiant, utilisez un mot de passe robuste et ne réutilisez pas le mot de passe de connexion Linux.

#Étape 5 : Installer le client Windows et se connecter

Téléchargez RustDesk pour Windows sur le site officiel ou depuis GitHub Releases. Sur un ordinateur Intel/AMD 64 bits classique, choisissez x86-64 (64-bit) → Windows → EXE. N’utilisez la version Windows ARM64 que pour un appareil Windows on ARM.

Dans le client Windows :

  1. Saisissez l’identifiant RustDesk du RK3576 dans le champ de l’appareil distant.
  2. Sélectionnez Connect.
  3. Saisissez le mot de passe permanent défini à l’étape 4.
  4. Vérifiez que vous pouvez voir et contrôler le bureau du RK3576 sans validation locale.

#Vérifier l’accès sans surveillance

#1. Contrôler le bureau lorsqu’une session est ouverte

Laissez une session GNOME ouverte sur le RK3576. Connectez-vous depuis Windows avec l’identifiant et le mot de passe permanent, puis testez la souris et le clavier.

#2. Se reconnecter après verrouillage

Verrouillez le bureau du RK3576 et fermez la connexion RustDesk sur Windows. Reconnectez-vous avec les mêmes identifiants. Vérifiez que l’écran verrouillé apparaît sans validation locale et que vous pouvez le déverrouiller avec le mot de passe de l’utilisateur Linux.

#3. Accéder à GDM après déconnexion ou redémarrage

Choisissez Log Out dans le menu GNOME ou exécutez :

bash
sudo reboot

Lorsque l’écran GDM réapparaît, ne vous connectez pas et n’approuvez rien sur l’appareil. Depuis le client RustDesk Windows, connectez-vous avec l’identifiant et le mot de passe permanent. Vérifiez que GDM est visible et que vous pouvez saisir le mot de passe de l’utilisateur Linux pour ouvrir une session à distance.

Log Out n’est pas Power Off. RustDesk ne peut pas fonctionner sur un appareil éteint. Ce test suppose que le système, le réseau et le service RustDesk sont en cours d’exécution.

Dans l’environnement Debian 12 / X11 testé, l’écran GDM était accessible sans validation locale et l’ouverture de session à distance a réussi.

#Dépannage

1. Gtk-WARNING: cannot open display apparaît lors de l’exécution de rustdesk en SSH

Une session SSH en mode texte n’a pas d’affichage graphique. Cela n’indique pas forcément une défaillance du service. Vérifiez systemctl status rustdesk --no-pager, puis utilisez les options en ligne de commande pour obtenir l’identifiant et définir le mot de passe.

2. L’écran de connexion GDM est inaccessible

Après redémarrage, vérifiez que la session Debian-gdm a Type=x11. La présence d’un processus Xwayland ne suffit pas à prouver que GDM utilise X11. Contrôlez WaylandEnable=false dans /etc/gdm3/daemon.conf.

3. RustDesk indique que l’appareil est hors ligne

Vérifiez que le RK3576 est allumé et connecté au réseau. En SSH, contrôlez rustdesk.service et l’identifiant de l’appareil. Après un redémarrage, attendez le rétablissement du réseau et du service.

4. L’installation affiche Unsupported file ./rustdesk-...deb given on commandline

Avec ls -lh et dpkg-deb --info, vérifiez que le paquet est complet et présent dans le répertoire courant, puis réessayez sudo apt install ./rustdesk-...deb.

#Résumé

Dans l’environnement Debian 12 / GDM X11 testé, RustDesk permet un accès sans surveillance au reComputer RK3576 lorsqu’une session est ouverte, après verrouillage et depuis l’écran GDM après redémarrage. La maintenance des appareils Edge AI / AIoT sur site nécessite ainsi moins souvent un écran et un clavier locaux.

#Références

#Assistance technique et échanges autour du produit

Merci d’avoir choisi Seeed Studio. Retrouvez d’autres guides et ressources d’assistance sur le Wiki Seeed Studio.