Installation

Installez votre propre serveur à l’aide d’un script d’installation simple d’exécution

Le script est hébergé sur https://github.com/dinger1986/rustdeskinstall, et voici notre support Discord.

Actuellement, le script téléchargera et configurera les serveurs de relais et de signal (HBBR et HBBS), générera des configurations mises à disposition sur une page Web protégée par mot de passe pour un déploiement simple sur les clients.

Exigences

Vous devez avoir installé Linux, le script est testé avec Centos Linux 7/8, Ubuntu 18/20 et Debian. Un serveur avec 1 CPU, 1 Go de RAM et 10 Go d’espace disque est suffisant pour exécuter Rustdesk.

Comment installer le serveur

Veuillez configurer le pare-feu sur votre serveur avant d’exécuter le script.

Assurez-vous d’avoir un accès SSH, et assurez vous que votre pare-feu autorise cet accès.

Exemple: UFW (basé sur Debian) afin d’autoriser une connexion ssh

ufw allow 22:22/tcp

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

ufw allow 21115:21119/tcp
ufw allow 8000/tcp
ufw allow 21116/udp
sudo ufw enable

Exécutez les commandes suivantes :

wget https://raw.githubusercontent.com/dinger1986/rustdeskinstall/master/install.sh
chmod +x install.sh
./install.sh

Installez votre propre serveur avec Docker(-compose)

Exigences

Vous devez avoir installé Docker/Podman afin d’exécuter un serveur Rustdesk en tant que conteneur Docker.

Exemples avec Docker

sudo docker image pull rustdesk/rustdesk-server
sudo docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbs -r <relay-server-ip[:port]>
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbr

--net=host ne fonctionne que pour Linux, ce qui permet à HBBS / HBBR de voir l’adresse IP publique entrante plutôt que l’adresse IP privée du conteneur (ex. 172.17.0.1). Si --net=host fonctionne , l’option -p ne sera pas utile. Pour windows, omettez sudo et --net=host.

Veuillez supprimer --net = host si vous rencontrez des problèmes de connexion sur votre configuration.

Exemples avec Docker-Compose

Pour exécuter les fichiers docker avec docker-compose.yml comme ci-dessous, vous devez avoir [docker-compose] (https://docs.docker.com/compose/) d’installé.

version: '3'

networks:
  rustdesk-net:
    external: false

services:
  hbbs:
    container_name: hbbs
    ports:
      - 21115:21115
      - 21116:21116
      - 21116:21116/udp
      - 21118:21118
    image: rustdesk/rustdesk-server:latest
    command: hbbs -r example.com:21117
    volumes:
      - ./data:/root
    networks:
      - rustdesk-net
    depends_on:
      - hbbr
    restart: unless-stopped

  hbbr:
    container_name: hbbr
    ports:
      - 21117:21117
      - 21119:21119
    image: rustdesk/rustdesk-server:latest
    command: hbbr
    volumes:
      - ./data:/root
    networks:
      - rustdesk-net
    restart: unless-stopped

Configurez votre propre instance de serveur sans utiliser Docker

ÉTAPE 1 : Téléchargez les logiciels côté serveur

Télécharger rustdesk-server.

OS Supportés :

  • Linux
  • Windows

Le tutoriel ci-dessous concerne Linux.

Il y a deux exécutables et un dossier:

  • hbbs - Le serveur Rendezvous / RustDesk ID/Rendezvous server
  • hbbr - Le serveur Relais / RustDesk relay server

Ils sont testés sous Centos Linux 7/8 et Ubuntu 18/20.

Exigences pour le serveur

Les exigences matérielles sont très faibles. La configuration minimale d’un serveur cloud de base est suffisante et les exigences du CPU et de la mémoire sont minimes. Vous pouvez également utiliser un Raspberry Pi ou quelque chose de similaire. En ce qui concerne le dimensionnement du réseau, si la connexion TCP hole punching directe échoue, du trafic de relais sera consommé. Le trafic d’une connexion de relais se situe entre 30k et 3m/s (écran 1920x1080) en fonction des paramètres de résolution et de la mise à jour de l’écran. Si ce n’est que pour un usage bureautique, le trafic est d’environ 100k/s.

ÉTAPE 2 : Exécutez hbbs/hbbr sur votre serveur

Option 1

Exécutez hbbs/hbbr sur votre serveur (CentOS ou Ubuntu). Nous vous suggérons d’utiliser pm2 pour gérer votre service.

./hbbs -r <relay-server-ip[:port]>
./hbbr

Option 2 - pm2

Exécutez hbbs/hbbr avec pm2

pm2 start hbbs -- -r <relay-server-ip[:port]>
pm2 start hbbr

pm2 nécessite Node.js v16+, si vous ne parvenez pas à exécuter pm2 (par exemple, vous ne pouvez pas voir hbbs/hbbr dans pm2 list), veuillez télécharger et installer la version Node.js LTS à partir de https://nodejs.org. Si vous souhaitez que hbbs/hbbr s’exécute automatiquement après le redémarrage, veuillez vous référer à pm2 save et pm2 startup. En savoir plus sur pm2. Un autre bon outil pour vos journaux est pm2-logrotate.

Le paramètre -r de hbbs n’est pas obligatoire, il est juste pratique pour ne pas avoir à spécifier de serveur relais côté client contrôlé. Vous n’avez pas besoin de spécifier le port si vous utilisez le port 21117 par défaut. Le serveur relais spécifié par le client est prioritaire sur ce paramètre.

Par défaut, hbbs écoute sur 21115 (TCP) et 21116 (TCP/UDP), 21118 (TCP), et hbbr écoute sur 21117 (TCP), 21119 (TCP). Assurez-vous d’ouvrir ces ports dans le pare-feu. Veuillez noter que 21116 doit être activé à la fois pour TCP et UDP. 21115 est utilisé pour le test de type NAT, 21116/UDP est utilisé pour l’enregistrement d’ID et le service heartbeat, 21116/TCP est utilisé pour le service TCP hole punching, 21117 est utilisé pour le service de relais, et 21118 et 21119 sont utilisés pour prendre en charge les clients Web. Si vous n’avez pas besoin de la prise en charge du client Web (21118, 21119), les ports correspondants peuvent être désactivés.

  • TCP (21115, 21116, 21117, 21118, 21119)
  • UDP (21116)

Si vous voulez choisir un port personnalisé, vous pouvez utiliser l’option -h pour accéder à l’aide.

ÉTAPE 3 : Définissez l’adresse IP hbbs/hbbr côté client

Cliquez sur le bouton Menu [ ⋮ ] à droite de ID comme indiqué ci-dessous, et choisissez “ID/Relay Server”.

Entrez le nom ou l’adresse IP du serveur hbbs dans la zone de saisie ID Server. Les deux autres adresses peuvent être laissées vides, RustDesk les déduira automatiquement, le serveur relais fera alors référence à hbbr (port 21117). e.g.

hbbs.exemple.fr

ou

hbbs.exemple.fr:21116

Configuration par suffixe du fichier rustdesk.exe (Windows uniquement)

Remplacez rustdesk.exe par rustdesk-host=<host-ip-or-name>,key=<public-key-string>.exe, par ex. rustdesk-host=192.168.1.137,key=xfdsfsd32=32.exe. Vous pouvez voir le résultat de la configuration dans la fenêtre À propos ci-dessous.

MenuPage A propos

S’il y a des caractères dans la clé qui ne peuvent pas être utilisés dans un nom de fichier Windows, veuillez supprimer le fichier id_ed25519 côté serveur et redémarrer hbbs/hbbr. Cela entraînera la régénération d’un fichier id_ed25519.pub. Vous devrez peut-être répéter ce processus jusqu’à ce que vous obteniez des caractères valides.

Clé

Contrairement à l’ancienne version, la clé pour cette version est obligatoire, mais vous n’avez pas besoin de la définir vous-même. Lorsque hbbs s’exécute pour la première fois, il génère automatiquement une paire de clés privée et publique chiffrées (respectivement situées dans les fichiers id_ed25519 et id_ed25519.pub du répertoire d’exécution), dont le but principal est le chiffrement des communications.

Si vous n’avez pas rempli la clé Key: (avec le contenu du fichier de clé publique id_ed25519.pub) à l’étape précédente, cela n’affectera pas la connexion, mais la connexion ne pourra pas être chiffrée.

cat ./id_ed25519.pub

Si vous souhaitez interdire aux utilisateurs sans clé d'établir des connexions non chiffrées, veuillez ajouter le paramètre -k _ lors de l'exécution de hbbs et hbbr, par exemple :

./hbbs -r <relay-server-ip[:port]> -k _
./hbbr -k _

Si vous voulez changer de clé, supprimez les fichiers id_ed25519 et id_ed25519.pub et redémarrez hbbs/hbbrhbbs générera une nouvelle paire de clés.

Si vous utilisez docker-compose et que les clés n’existent pas, le démarrage des conteneurs créera des clés différentes dans les dossiers hbbs et hbbr.

Vous pouvez créer des clés manuellement dans hbbs et les copier dans hbbr avant de démarrer les conteneurs. Ou vous pouvez arrêter le conteneur hbbr et copier les clés de hbbs dans le dossier hbbr, puis redémarrer le conteneur.