La version 1.0 de l'outil OpenZiti a Ă©tĂ© prĂ©sentĂ©e, permettant d'intĂ©grer des moyens d'interaction rĂ©seau distribuĂ©e et d'accĂšs aux services dans un environnement rĂ©seau isolĂ© au sein des applications. OpenZiti offre la possibilitĂ© de dĂ©ployer un rĂ©seau overlay spĂ©cifique aux applications en cours de dĂ©veloppement, fonctionnant sur Internet classique et utilisant le routage en maillage, oĂč chaque point du rĂ©seau se connecte Ă travers des points voisins. Le code du projet est Ă©crit en Go et est distribuĂ© sous la licence Apache 2.0. Des liaisons sont fournies pour les langages C, Go, Python, Swift, Java, Node.js et C# (.NET), ainsi qu'un ensemble d'outils pour l'intĂ©gration avec des applications sur la plateforme Android.
Le systĂšme OpenZiti est Ă l'origine conçu pour construire des rĂ©seaux garantissant la protection et l'isolation du trafic dans des environnements non sĂ©curisĂ©s, oĂč les nĆuds peuvent ĂȘtre compromis (architecture Ă confiance zĂ©ro â Zero Trust). La technologie peut ĂȘtre utilisĂ©e pour organiser la communication avec les applications au lieu de VPN. Le fonctionnement du rĂ©seau est assurĂ© par l'utilisation d'un processus contrĂŽleur qui gĂšre la configuration du rĂ©seau, l'authentification et le paramĂ©trage des services, ainsi que des nĆuds autorisĂ©s Ă agir en tant que routeurs, formant un rĂ©seau en maillage et effectuant le transit du trafic Ă travers eux. Il est possible d'ajouter des services pour la rĂ©partition de la charge et garantir la rĂ©silience.

L'accÚs au réseau overlay s'effectue via des clients edge spécifiques, permettant de se connecter depuis un réseau externe au réseau overlay créé avec OpenZiti. Il est possible de créer des tunnels et des proxys, permettant de faire passer le trafic depuis un réseau traditionnel vers le réseau overlay et vice versa, afin d'interagir avec les applications fonctionnant dans le réseau overlay et d'accéder à des applications existantes qui n'intÚgrent pas la prise en charge du réseau overlay.
L'accĂšs au rĂ©seau et l'obtention de donnĂ©es depuis serveurs La DNS n'est possible qu'aprĂšs une autorisation et une authentication obligatoires - sans les pouvoirs nĂ©cessaires, le client ne pourra pas vĂ©rifier la disponibilitĂ© du service ni s'y connecter. Tout le trafic est protĂ©gĂ© par mTLS (authentification mutuelle, oĂč le client et le serveur s'authentifient mutuellement) et par un chiffrement de bout en bout (ChaCha20-Poly1305), c'est-Ă -dire que la compromission des nĆuds du rĂ©seau ne permettra pas de visualiser le trafic des applications. Les fonctions de la bibliothĂšque libsodium sont utilisĂ©es pour le chiffrement.
Parmi les applications populaires utilisant OpenZiti, on peut citer la plateforme de partage de données Zrok et l'écosystÚme browZer pour le déploiement de sites dans un réseau superposé. En plus de créer des applications réseau distribuées, OpenZiti convient également à la construction de réseaux privés pour organiser l'accÚs à des API fermées, des sites ou des bases de données, camouflant les infrastructures basées sur Kubernetes dans un réseau superposé, ainsi qu'à la gestion à distance de systÚmes et d'appareils externes sans configurer de pare-feu et sans avoir recours à un VPN.
La version OpenZiti 1.0 garantit la stabilité de l'API pour les routeurs et les contrÎleurs (la stabilité de l'API pour les clients était déjà garantie auparavant). à partir de cette version, la compatibilité descendante sera maintenue dans l'API et l'interface de ligne de commande, et en cas de nécessité de suppression de fonctionnalités, un processus de pré-transition vers une catégorie obsolÚte sera appliqué, suivie d'une suppression effective seulement lors d'un changement significatif de la version. Dans la nouvelle version, des tests supplémentaires ont également été effectués en simulant divers échecs de composants réseau (test de chaos), permettant de s'assurer de la robustesse du réseau en cas de situations anormales et de sa capacité à retrouver un fonctionnement normal aprÚs la reprise des composants défaillants.
Source : opennet.ru
