Aller au contenu

RustDesk

RustDesk est une application de prise en main à distance, chiffrée de bout en bout, avec un serveur qu’il est possible d’héberger. Elle fonctionne aussi bien en LAN qu’en accès externe via Internet.

Ses points forts :

  • Open source et gratuit
  • Fonctionne sans configuration réseau complexe (NAT, etc.)
  • Serveur d’identification et de relais en auto hébergement
  • Application disponible sur Windows, Linux, macOS, Android, iOS

cover

Pourquoi l’auto-héberger ?

Héberger vous-même les serveurs hbbs (serveur public) et hbbr (serveur de relais) permet :

  • de garantir que vos connexions ne passent par aucun tiers
  • de supprimer toute dépendance à l’infrastructure de RustDesk
  • d’intégrer RustDesk dans votre écosystème existant (reverse proxy, DNS, etc.)

Installation

Le fichier docker-compose.yml :

docker-compose.yml
services:
  hbbs:
    image: docker.io/rustdesk/rustdesk-server:latest
    container_name: rustdesk
    hostname: hbbs
    command: hbbs
    env_file: rustdesk.env
    ports:
      - 21115:21115
      - 21116:21116/tcp
      - 21116:21116/udp
    volumes:
      - ./files:/root
    depends_on:
      - hbbr
    restart: always

  hbbr:
    image: docker.io/rustdesk/rustdesk-server:latest
    container_name: rustdesk-relay
    hostname: hbbr
    command: hbbr
    ports:
      - 21117:21117
    volumes:
      - ./files:/root
    restart: always

Et son fichier rustdesk.env associé :

rustdesk.env
ALWAYS_USE_RELAY=N

Si cela est possible, RustDesk effectuera une connexion peer to peer entre les 2 machines pour de meilleures performances. Mais vous pouvez forcer l’utilisation du serveur de relais.

Firewall

Dans le cas où vous utilisez un firewall, pensez à ouvrir les ports en conséquence. Certains ne nécessitent que du TCP, et un nécessite à la fois du TCP et de l’UDP. Regardez directement le fichier docker-compose.yml pour avoir les informations.

Si comme moi vous utilisez ufw, voici les commandes à passer pour l’ajout des ports :

sudo ufw allow 21115/tcp
sudo ufw allow 21116
sudo ufw allow 21117/tcp

Configuration côté client

Dans l’appli RustDesk (sur desktop ou mobile), il suffit d’indiquer les éléments suivants dans les paramètres, dans Serveur ID/relais :

  • Serveur ID : l’IP ou le nom DNS de votre serveur
  • Serveur relais : même chose
  • Serveur API : laissez-le à vide
  • Key : Clé publique générée par RustDesk (fichier id_ed25519.pub présent dans le volume)

settings

Important

Tous les appareils que vous voulez faire communiquer doivent désormais passer par ce même serveur

Dernière modification