Rustdesk à la place Teamviewer
Si vous faites de l'administration à distance, il est fort probable que vous utilisez TeamViewer. Bien plus rapide et pratique que son ancêtre VNC (
UltraVNC), ce logiciel s'est imposé sur le marché de la prise en main graphique à distance.
Cependant, au fil du temps, Teamviewer est devenu de moins en mois attractif :
- La version gratuite est très limitée
- La licence pour un seul utilisateur est très chère (13,90 € / mois, soit 166,80 € / an)
- L'utilisation du logiciel impose l'utilisation d'un compte utilisateur chez TeamViewer
- TeamViewer préfère sponsoriser l'équipe de Manchester United plutôt que de garder des tarifs accessibles pour leurs clients
TeamViewer préfère sponsoriser l'équipe de Manchester United plutôt que de garder des tarifs accessibles pour leurs clients (image: RMC Sport / BFM TV)
Heureusement, il existe une alternative gratuite et opensource à Teamviewer, et elle se nomme
Rustdesk
Logo de Rustdesk
Comment fonctionnent les clients Rustdesk et Teamviewer ?
Les clients Rustdesk et Teamviewer fonctionnent de la même manière. Admettons que vous êtes sur un ordinateur "A" et que vous voulez afficher le bureau distant de l'ordinateur "B" :
- On met le client Teamviewer ou le client Rustdesk sur l'ordinateur "A"
- On met le client Teamviewer ou le client Rustdesk sur l'ordinateur "B"
- On met les informations de connexion de "B" dans le client de "A" et on se connecte. L'application demande le mot de passe et hop, on est connecté à "B".
D'un point de vue réseau, la connexion n'est pas directe de "A" vers "B". Elle passe par un ordinateur tiers qui appartient à Teamviewer ou Rustdesk. On appelle cet ordinateur intermédiaire :
un relais.
Schématiquement, cela ressemble à ça :
Connexion de Rustdesk ou Teamviewer
L'histoire peut s'arrêter là. Rustdesk fonctionne comme Teamviewer, donc changer Teamviewer par Rustdesk est extrèmement facile. Si vous souhaitez vous connecter à l'ordinateur de votre grand-mère vous n'avez besoin de rien de plus. Ça fonctionne, point barre.
Peut-on rendre la connexion Rustdesk plus rapide et plus sécure ?
Cette architecture via un serveur relais pose quelques problèmes quand on est un puriste de la cybersécurité. En effet, la connexion distante à un ordinateur est considéré comme un flux confidentiel : cela ne doit concerner que vous, et aucun tiers ne devrait voir passer ce flux dans son architecture. Autrement dit :
- Qui contrôle l'ordinateur relai ? Les entreprises Teamviewer ou Rustdesk sont elles dignes de confiance ?
- Combien de personnes on accès à votre flux, même si votre flux est crypté ?
- Est-on sûr que le cryptage de votre flux va tenir dans le temps ? Par exemple si un employé de Teamviewer ou Rustdesk a (illégalement) capturé votre connexion, puis a quitté l'entreprise, est-on sûr qu'il ne puisse pas décrypter votre connexion dans 10 ou 20 ans ?
- Comment est sécurisé le serveur qui héberge le relai ?
- Les serveurs relais sont mutualisés avec les autres utilisateurs de Rustdesk ou Teamviewer. Ça irait certainement plus vite s'il n'y avait que vous qui utilisiez ce serveur relais !
La différence entre Rustdesk est Teamviewer, c'est que Rustdesk est open source. Donc, avec Rustdesk, il est possible de résoudre toutes ces problématiques en installant votre propre serveur relais !
Bénéfices d'avoir son propre serveur relais Rustdesk
Vous l'avez compris, si vous souhaitez vous connecter aux ordinateurs de tout vos amis, le client Rustdesk "de base" est suffisant : pas besoin d'installer le serveur relai. Mais si vous êtes dans le cadre d'une entreprise ou d'une organisation, les bénéfices sont importants :
- Une connexion privée : Si tous les ordinateurs de votre entreprise passent par un relai privé, alors l'identifiant (ID) de chaque ordinateur n'est pas rendu public ! L'ID est connu du serveur relais. Quelqu'un d'extérieur à l'entreprise ne peut pas se connecter à un de vos ordinateurs, même s'il possède son ID et son mot de passe puisqu'il doit se connecter au relais pour que ça fonctionne. Les connections qui passent par le relais sont donc privées.
- La maîtrise de votre périmètre : Le serveur relai fait partie de votre périmètre, de votre architecture. Vous avez la main sur sa maintenance, sa mise à jour, sa sécurité.
- Indépendance : vous ne dépendez de personne. Teamviewer ou Rustdesk peuvent avoir une panne comme celle du 8 janvier 2024, vous n'êtes pas impacté.
- Vous connaissez les employés qui ont accès au serveur relai, donc aux flux de connexions. Vous pouvez mettre un système d'authentification pour accéder au serveur. Si employé malveillant il y a, il sera dans votre périmètre.
- Des connexions distantes rapides car le relai n'est plus mutualisé qu'avec les ordinateurs de votre parc informatique.
- Et enfin, puisque Rustdesk est open source donc vous pouvez contrôler à tout moment la sécurité du logiciel. Ceci est impossible avec Teamviewer.
- C'est gratuit. Alors que Rustdesk et Teamviewer ont des offres payantes pour ce type de service.
Installation d'un serveur relai Rustdesk
Nous allons voir en détail l'installation du relai Rustdesk sur un système d'exploitation Debian. Pour information, on peut aussi faire cela sous Windows.
Où installer le relais, et sur quel serveur ?
Nous conseillons de mettre le relai sur un serveur VPS. Officiellement, les prérequis sont tellement faibles pour le serveur que n'importe quel VPS bon marché fera l'affaire. Même un Raspberry Pi serait assez puissant pour faire tourner le relais.
Téléchargement et installation
Il y a deux packages à installer. Les deux sont disponibles sur le
github officiel. Il s'agit de :
- hbbr (RustDesk ID/Rendezvous server) : rustdesk-server-hbbr_amd64.deb
- et hbbs (RustDesk Relay server) : rustdesk-server-hbbs_amd64.deb
On ne va pas s'étendre que les différences entre hbbr et hbbs... Tout ce dont vous avez besoin de savoir c'est que les 2 packages sont à installer sur votre serveur Debian.
Donc avec la version 1.1.10, cela donne :
wget "https://github.com/rustdesk/rustdesk-server/releases/download/1.1.14/rustdesk-server-hbbr_1.1.14_amd64.deb"
wget "https://github.com/rustdesk/rustdesk-server/releases/download/1.1.14/rustdesk-server-hbbs_1.1.14_amd64.deb"
dpkg -i rustdesk-server-hbbr_1.1.14_amd64.deb
dpkg -i rustdesk-server-hbbs_1.1.14_amd64.deb
Lancez les deux services :
service rustdesk-hbbs start
service rustdesk-hbbr start
Les logs sont situés dans /var/log/rustdesk-server/
Ouvrir les port sur le firewall
Si votre serveur relais comporte un firewall, il faut laisser entrer le ports suivants :
- TCP : 21115, 21116, 21117
- UDP : 21116
Voilà, c'est fini, votre serveur relais est installé. Nous allons voir comment les clients Rustdesk vont s'authentifier sur le relais...
Authentification des client Rustdesk
Pour que le client Rustdesk puisse utiliser le relais, il faut lui donner 2 choses :
- L'adresse IP du relais
- La clé secrète qui permet l'authentification sur le relai. Cette clé est enregistrée dans le fichier id_ed25519. Sous Debian, il est dans le répertoire /var/lib/rustdesk-server/ Un simple cat permet de récupérer la clé secrète
cat /var/lib/rustdesk-server/id_ed25519.pub
Attention : Cette clé secrète ne sert que pour la connexion client -> relais. Ce n'est pas pour s'authentifier sur un ordinateur à distance. Ça, c'est le rôle du mot de passe que vous avez paramétré dans la configuration du client.
Une fois que vous avez la clé secrète, il faut paramétrer le client. Il y a 2 méthodes possibles, à vous de choisir celle que vous préférez :
- Dans les paramètres du client.
- Dans le nom du fichier du client.
Dans les paramètres du client
Les paramètres du clients sont accessible en cliquant sur les points de suspensions verticaux.
Dans la configuration, on va donc dans "Réseau" et on "déverrouille les configurations réseau".
Puis on met l'IP du serveur relai dans "Serveur relais" et la clé secrète dans "Key".
Configuration d'un serveur relais dans les paramètres de Rustdesk
Ça y est, c'est le client est paramétré ! Il se connectera donc par le relais pour accéder aux autres ordinateurs.
Dans le nom du fichier du client
Si vous avez des centaines d'ordinateurs, cela peut être très pénible de passer sur chacun pour changer le configuration de Rustdesk.
Alors Rustdesk a prévu ce cas en mettant la configuration directement dans le nom du fichier.
Voici la différence entre un fichier Rustdesk de base permettant de se connecter sur d'autres Rustdesk dans le réseau public, et un fichier Rustdesk permettant de se connecter sur votre propre serveur relais :

-> devient ->

Comme vous pouvez le voir, le nom du fichier comporte l'IP du relais et la clé secrète sous cette forme :
rustdesk-host=IP du relais,key=clé secrète du relais.exe
Vous n'avez donc qu'à distribuer ce .exe directement sur les différents ordinateurs qui utiliseront tous le relais.
Tags
OUTIL D'ADMINISTRATION
GRATUIT
OPEN SOURCE
AUTHENTIFICATION
CYBERSÉCURITÉ
LINUX
Inscription à notre lettre d'information
Inscrivez-vous à notre
lettre d'information pour vous tenir au courant de nos actualités et de nos dernières trouvailles.