Sommaire
Salut, salut 🙂,
Merci d'avoir cliqué sur cet article, j'espère que ça vous plaira 😁.
Aujourd'hui, on va parler de bureau à distance, ouais je sais, dis comme ça, ça vend du rêve.
Mais le truc, c'est que dans ma vie actuelle là, j'en utilise vraiment beaucoup...
Donc, pourquoi ne pas en faire un article ? 😁.
Vous êtes prêts ? On y va ? 😝
Dans ma vie actuelle, je vais passer de Windows à MacOS sans arrêt...
Dans le monde de l'entreprise, Windows est omniprésent, encore plus maintenant qu'avant avec des solutions comme Intune et Entra ID.
Du coup, ma clientèle est sous Windows, je dois connaître Windows, et vous avez déjà vu par le passé que je connais plutôt très bien cet OS, notamment quand j'ai décidé d'injecter du code dans explorer.exe .
D'ailleurs, j'ai même été plus loin en créant du code qui permet de faire une escalade de privilèges... (Devenir administrateur sans respecter le processus "UAC" de Microsoft).
Windows est un système très bien, il fait le boulot, mais...
Je peux faire et dire ce que je veux, je reviens toujours sur mon Mac à la fin, la raison ? macOS et surtout ses logiciels.
Moi, mon plaisir, c'est de faire plaisir aux gens, je veux que l'expérience utilisateur de ce que je crée soit la plus sympa possible et pour m'inspirer j'utilise beaucoup macOS et iOS...
Apple, ils sont beaucoup trop forts à ce petit jeu-là...
Je pense que si je devais donner un exemple de pourquoi macOS, je dirais "Pixelmator Pro".
Oui, je connais Affinity Photo ou encore tout simplement Photoshop mais c'est trop des usines à gaz pour moi.
Je fais des tas d'illustrations à droite à gauche (rien que pour ce blog, je veux quelque chose de rapide et efficace. Et je n'ai jamais rien trouvé de mieux que Pixelmator Pro (et de toute façon je n'ai plus envie de changer).
Ceci étant dit, je vais parfois depuis un PC Windows avoir accès à mes ordinateurs pommés et parfois c'est l'inverse.
C'est pourquoi sur mes machines, j'ai toujours un bureau à distance qui traîne...
Je l'utilise absolument tous les jours, je l'ai configuré de sorte qu'il expose un certificat SSL signé par une vraie autorité de certification, afin de limiter d'éventuelles attaques "man in the middle" sur ma connexion.
Bien sûr le fait d'utiliser un certificat signé par une autorité présente dans le "certificate store" de Windows ne bloque pas le man in the middle, si je ne contrôle pas la machine depuis laquelle je peux me connecter il peut y avoir des certificats "pas cool" dans le trust store.
Mais au moins lors de la connexion, le bureau à distance ne se plaint pas, et de temps en temps je regarde l'état du certificat via le petit cadenas en haut pour vérifier que c'est bien le mien.
Bref, tout ça pour vous dire, que MS RDP je l'utilise tous les jours, car je suis sur un client dans un environnement Microsoft et j'ai besoin de me connecter à un PC Windows.
Quand le client c'est du Windows et que le serveur c'est du Windows, ça marche vraiment très bien... de plus étant intégré à l'OS de Microsoft, le serveur se verrouille sur l'écran donc personne ne peut voir ce que vous faites.
La connexion est ultra fluide, les raccourcis clavier fonctionnent tous sur l'hôte distant (hormis Ctrl+Alt+Suppr mais on ne l'utilise pas souvent)
Vraiment, c'est le top dans ce type d'environnement, on ne se rend même plus compte qu'on est sur une machine distante.
(Sauf pour le jeu vidéo, mais ce n'est pas mon usage, après j'ai lancé WoW.exe à distance pour tester)
Il y a également un client (L'application Windows) pour MS RDP sous macOS, mais ce n'est pas aussi fluide que de Windows à Windows.
Nous y voilà, au cœur de cet article
Au premier abord, quand j'ai entendu parler de RustDesk, je me suis dit "self host", "open source", cool mais c'est sûrement une machine à gaz...
Car, on ne va pas se mentir, un des problèmes de l'open source, c'est souvent l'expérience utilisateur, que les flux vidéo et les "inputs" passent par un relais sous notre contrôle, c'est très bien mais si c'est compliqué à mettre en œuvre et à maintenir, c'est complètement mort (et encore plus dans le monde de l'entreprise).
Quand on lance RustDesk pour la première fois, on reconnaît tout de suite l'inspiration : c'est Teamviewer.
Avec le même système d'identifiant et de mot de passe temporaire, en gros je dirais que c'est la même interface mais sans publicité partout.
Du coup, sur le plan de l'UX, je ne suis pas déçu, même si c'est de l'open source, on sent tout de suite qu'il y a des intérêts commerciaux derrière et que donc tout ce qui est UX est travaillé.
Dans l'open source par exemple on peut prendre le cas de VLC, qui est d'un point de vue technique complètement incroyable, il sait tout lire, mais l'interface utilisateur a toujours été un des points "pas fou" de VLC.
Lors du premier lancement de RustDesk, vous verrez un message vous invitant à créer votre propre serveur pour de meilleures performances.
Et le truc plutôt cool, c'est qu'avec Docker, c'est super simple à faire, moi par exemple je le fais tourner sur mon NAS Synology.
Pour commencer voici un schéma, que j'ai trouvé ici.
RustDesk fonctionne avec deux services sur le serveur :
Donc, dans cette configuration, tout passe par votre infrastructure à vous
RustDesk propose des images docker pour faciliter le déploiement de serveur, comme je le disais plus haut, perso, j'ai déployé ça sur un NAS Synology, ça fonctionne parfaitement.
Vous pouvez également trouver ce docker-compose.yml sur la documentation officielle de RustDesk.
Comme vous le voyez, ils mettent le networking en mode "host", c'est tout simplement car le serveur RustDesk utilise pas mal de ports
Service HBBS (Serveur de signalement)
Service hbbr (Serveur relais)
(Je n'inclus pas les ports de la version Pro)
Une fois votre serveur lancé, dans le volume, vous trouverez votre clé publique et votre clé privée, pensez à mettre de côté votre clé publique, vous allez en avoir besoin
Maintenant que le serveur est prêt, il n'y a plus qu'à connecter vos machines à celui-ci.
Pour ce faire dans RustDesk client (peu importe la plateforme), cliquez sur les trois petits points à côté de votre id (le numéro).
Puis, rendez-vous dans "réseau", puis "serveur ID/Relais"
Ici, il ne vous reste plus qu'à mettre votre IP (ou nom de domaine) dans "serveur ID" et "serveur relais"
Enfin, plus bas, mettez votre clé publique, cela permettra à votre client de vérifier qu'il parle bien avec votre serveur et donc cela empêchera les "man in the middle".
Je vous invite également à vous promener dans les options de RustDesk, par exemple pour définir un mot de passe permanent.
Après avoir tout configuré, il est temps d'utiliser, en fait 😁.
Dans mon cas d'usage, je l'utilise soit de macOS à macOS, soit de Windows à macOS, comme je l'ai dit plus tôt pour Windows vers Windows, je préfère le système de Microsoft.
Pour moi les fonctionnalités qui sont "deal breaker" sont :
En ce qui concerne la fluidité de la solution, cela ne vaut pas un Microsoft Remote Desktop (et encore moins Parsec, pour le gaming) mais quand vous avez besoin de vous connecter pour faire des petites retouches sur Pixelmator Pro, c'est bien pratique.
RustDesk va rester dans ma toolbox, dans un monde où je suis toujours à droite à gauche, ça me permet d'accéder à tous mes ordinateurs (quatre, en tout), peu importe où je suis.
Il est bien pratique mais pas forcément le meilleur choix en fonction de la plateforme, son côté tout terrain lui donne des points qu'un MS RDP n'a pas.
Passez une très bonne semaine et à la prochaine 😁.