Aller au contenu principal
Réalisation phare conçue en interne

Construire une plateforme d'accès à distance en peer-to-peer

Notre réalisation phare est la plateforme à laquelle appartient ce site : un système qui relie deux machines à travers des réseaux hostiles, directement partout où le réseau le permet, avec une latence assez faible pour contrôler un écran en direct. Son client Windows est aujourd'hui en accès anticipé. Comme c'est la nôtre, nous pouvons en parler ouvertement.

Rust et Go
Langages
Accès anticipé
Client Windows
Chiffrée
Chaque session
En code
Infrastructure

Présenté comme une réalisation phare en propre : la plateforme de Vexaro elle-même, le produit auquel ce site appartient. Les missions clients restent confidentielles, de sorte que le travail dont nous pouvons parler ouvertement est le nôtre.

Le défi

Connecter des machines que l'internet ne veut pas voir connectées

L'exigence difficile était une connexion directe entre deux machines à travers des réseaux conçus précisément pour l'empêcher. Il fallait éviter de faire transiter chaque session par un centre de données et rester assez rapide pour un contrôle d'écran interactif en direct. Tout le reste de la plateforme repose sur la résolution de ce problème.

Ce qui le rendait difficile
  • Établir des connexions directes à travers les NAT et les pare-feu restrictifs
  • Maintenir une latence assez faible pour le contrôle d'écran en direct, pas seulement le transfert de fichiers
  • Éviter de faire transiter chaque session par un centre de données, pour le coût et la confidentialité
  • Chiffrer chaque session, chaque partie vérifiant exactement à qui elle est connectée
Ce que nous avons construit

Quatre couches, chacune dans le bon outil

Nous avons choisi le langage et l'architecture adaptés à chaque couche au lieu d'imposer une seule stack à tout le système. Nous appliquons le même discernement aux projets clients.

1

Un cœur en Rust pour la vitesse et la sûreté

La plateforme se connecte en direct partout où le réseau le permet, et sinon via un relais authentifié. Chaque session est chiffrée, chaque identité vérifiée. Le cœur critique est écrit en Rust, pour la sûreté mémoire et une latence prévisible.

2

Un backend en Go

Les comptes, les appareils et les règles d'accès sont gérés par un backend écrit en Go, la couche où la lisibilité et l'itération rapide comptent le plus.

3

Clients de bureau et mobile

Une application de bureau Windows, aujourd'hui en accès anticipé, et un client mobile en développement.

4

Une infrastructure décrite en code

Chaque environnement est défini en code, avec supervision, journalisation et sauvegardes intégrées, plus une option Kubernetes pour les installations Enterprise auto-hébergées.

Le résultat

Une plateforme que nous faisons tourner chaque jour

Nous décrivons le résultat par les capacités et l'architecture, pas par des chiffres inventés. C'est le système que nous exploitons, et il montre que nous livrons les choses difficiles au lieu de seulement en parler.

Ce qu'il accomplit
  • Les sessions se connectent en direct partout où le réseau le permet, et via un relais authentifié sinon
  • Le contrôle à distance en direct reste réactif, avec une vidéo qui s'adapte aux conditions réseau
  • L'infrastructure est reproductible à partir du code
  • Les sessions directes sont chiffrées de bout en bout ; quand un réseau impose une connexion relayée, le trafic reste chiffré en transit à travers des relais exploités par Vexaro
La stack

La stack derrière la plateforme

Langages

Rust et Go.

Applications

Une application de bureau Windows en accès anticipé, et un client mobile en développement.

Infrastructure et données

Conteneurs et infrastructure décrite en code, avec supervision, journalisation et sauvegardes intégrées.

Vous avez un problème difficile bien à vous.

L'ingénierie derrière cette plateforme est la même que celle que nous apportons au travail client. Dites-nous ce que vous construisez.