Retour aux mises à jour
New releaseJul 28, 2026

ziti v2.0.2

Plateforme de réseau zero-trust qui rend les services invisibles grâce à l'identité cryptographique, un accès basé sur les politiques et un chiffrement de bout en bout. Remplace les VPN, sécurise l'IoT et connecte des environnements multi-cloud sans ports ouverts.

Partager

Build Status Go Report Card GoDoc Discourse License GitHub Stars

OpenZiti

OpenZiti est une plateforme de réseautage zero-trust open-source qui rend les services réseau invisibles aux utilisateurs non autorisés. Chaque connexion, qu'elle provienne d'un utilisateur, d'un service, d'un appareil ou d'une charge de travail, est authentifiée par une identité cryptographique, autorisée par une politique et chiffrée de bout en bout.

OpenZiti fonctionne aussi bien avec les applications existantes (en utilisant des tunnelers légers sans modification de code) qu'avec les nouvelles applications (en utilisant des SDK embarqués pour le modèle zero-trust le plus fort). Cela le rend pratique à la fois pour les environnements brownfield et le développement greenfield.

Créé et sponsorisé par NetFoundry. Sous licence Apache 2.0.

Architecture OpenZiti : contrôleur, routeurs de périphérie, SDK et tunnelers


Table des matières


Cas d'utilisation

OpenZiti vous permet d'étendre le zero-trust partout pour n'importe quel cas d'utilisation, y compris les charges de travail et workflows non humains, à travers plusieurs réseaux et tiers. Voici quelques cas d'utilisation courants.

Remplacer les VPN

Fournir un accès sécurisé aux services internes sans clients VPN, problèmes de split tunneling ou goulots d'étranglement de concentrateur. Chaque service est autorisé individuellement. Plus de problème de « une fois que vous êtes dedans, vous pouvez tout atteindre ».

API et services sombres

Rendre les API et services invisibles sur Internet. Zéro port d'écoute signifie zéro surface d'attaque. Les clients autorisés se connectent via OpenZiti ; tous les autres ne voient rien.

IoT et identité non humaine

Donner à chaque appareil, capteur et machine une identité cryptographique unique. Le modèle d'identité d'OpenZiti fonctionne aussi bien pour les charges de travail non humaines que pour les utilisateurs humains, fournissant une authentification forte pour les connexions machine à machine qui constituent la majorité du trafic réseau moderne.

Charges de travail Zero Trust

Sécuriser la communication entre charges de travail à travers les clouds et les environnements. Les services s'authentifient mutuellement avec une identité cryptographique, pas par emplacement réseau. Pas de secrets partagés, pas de listes d'autorisation IP, pas d'autorité ambiante.

IA agentique

Sécuriser la communication agent-service et agent-agent avec une identité cryptographique pour chaque participant IA. Les serveurs MCP, les points de terminaison d'outils et les LLM privés restent sombres, sans ports d'écoute ni URL publiques. Les agents s'authentifient avec des identités fortes et uniques et n'atteignent que les ressources autorisées par la politique, de sorte que les workflows autonomes obtiennent l'accès nécessaire sans autorité ambiante sur tout le reste.

Connectivité multi-cloud et hybride

Un seul réseau overlay sur AWS, Azure, GCP, les centres de données sur site et les sites périphériques. Pas d'outils réseau spécifiques au cloud, pas de tunnels VPN entre environnements, pas d'arrangements de peering complexes.

Accès aux services auto-hébergés

Accéder aux services de laboratoire domestique ou auto-hébergés comme Nextcloud, Home Assistant, les serveurs multimédias et les environnements de développement depuis n'importe où. Pas de ports de routeur ouverts, pas de DNS dynamique, pas de dépendance à des services de tunnel tiers. Vous contrôlez l'ensemble du chemin.

Services Kubernetes et inter-clusters

Connecter des services entre clusters Kubernetes sans règles d'ingress complexes, sidecars de maillage de services ou tunnels VPN entre clusters. Fonctionne au-delà de Kubernetes, prenant en charge la connexion des services k8s aux VM, au bare metal, aux appareils IoT ou à tout autre élément sur l'overlay.


Capacités clés

CapacitéDescription
Services sombresLes services n'ont aucun port d'écoute. Invisibles aux scanners et aux utilisateurs non autorisés.
Identité pour toutIdentité cryptographique pour les utilisateurs, services, appareils et charges de travail non humaines (NHI). Pas basée sur l'IP.
Opérations basées sur l'identitéGérer les réseaux via des identités et des politiques plutôt que des adresses IP et des règles de pare-feu. Simplifie les opérations et élimine la configuration manuelle du réseau.
Chiffrement de bout en boutDonnées chiffrées de la source à la destination en utilisant libsodium. mTLS pour l'authentification. Zero trust dans le chemin réseau.
Pas de VPN ni de ports ouvertsLes connexions sont routées via l'overlay d'OpenZiti. Pas de clients VPN, pas de règles de pare-feu entrantes, pas de ports exposés.
Routage intelligentMaillage avec sélection intelligente du chemin pour la performance et la fiabilité.
Déploiement flexibleEmbarquer des SDK, utiliser des tunnelers, ou déployer au niveau réseau. Mélanger et assortir par service.
Accès piloté par politiquePolitiques fines basées sur l'identité. L'accès peut être révoqué en temps réel, fermant les connexions actives.
API REST programmablesAPI de gestion complète pour l'automatisation et l'intégration. Console d'administration web incluse.
Entièrement auto-hébergeableExécutez toute la plateforme sur votre infrastructure. Pas de dépendances fournisseur. Open source, Apache 2.0.

Trois modèles de déploiement

OpenZiti prend en charge trois modèles zero-trust. Mélangez-les dans un seul réseau et migrez entre eux au fil du temps.

Accès réseau

Déployez un routeur de périphérie OpenZiti dans une zone réseau de confiance. Le trafic entre dans l'overlay depuis des clients authentifiés et sort dans le réseau privé où les services s'exécutent.

  • Modifications de code : Aucune
  • Agent sur l'hôte du service : Aucun
  • Modèle de sécurité : Accès basé sur l'identité à la limite du réseau. Similaire à une passerelle, mais avec identité cryptographique et transport chiffré.

Accès hôte

Exécutez un tunneler OpenZiti sur le même hôte que votre service. Le tunneler gère l'identité, l'authentification et le chiffrement. Le service n'a qu'à accepter les connexions depuis localhost.

  • Modifications de code : Aucune
  • Configuration : Installer le tunneler, inscrire l'identité
  • Modèle de sécurité : Limite de confiance au niveau du système d'exploitation hôte. Le service est sombre pour le réseau et accessible uniquement via le tunneler.

Accès applicatif (le plus fort)

Embarquer un SDK OpenZiti directement dans les applications client et/ou serveur. L'application elle-même détient l'identité cryptographique et chiffre le trafic dans le processus. Aucun port d'écoute n'existe, même pas sur localhost.

  • Modifications de code : Oui
  • Modèle de sécurité : Le plus fort. Chiffrement de bout en bout dans le processus. Complètement sombre. Identité au niveau applicatif, pas au niveau réseau, pas au niveau hôte.

Par où commencer : De nombreuses équipes commencent par l'Accès hôte (tunnelers) pour les services existants. Il se déploie en quelques minutes sans modification de code. Pour les nouveaux développements ou les charges de travail hautement sécurisées, l'Accès applicatif (SDK) offre la posture zero-trust la plus forte.


Pour commencer

Les Démarrages rapides suivants montrent comment configurer un réseau OpenZiti local pour le développement, les tests et l'apprentissage. Pour les déploiements de production, consultez la documentation produit sur https://netfoundry.io/docs/openziti/category/deployments/.

Démarrage rapide avec Docker

Le moyen le plus rapide d'obtenir un réseau OpenZiti local :

wget https://get.openziti.io/dock/all-in-one/compose.yml
docker compose up

Cela démarre un contrôleur, un routeur de périphérie et la console Ziti dans une seule pile compose. La console est accessible à https://localhost:1280/zac/. À partir de là, vous pouvez créer des identités, définir des services et configurer des politiques d'accès.

Voir le démarrage rapide Docker tout-en-un pour tous les détails, y compris les options de stockage, les variables d'environnement et l'utilisation en ligne de commande.

Démarrage rapide avec la CLI

Téléchargez le dernier binaire ziti depuis GitHub Releases, puis :

ziti edge quickstart

Cela met en place un réseau de développement local : contrôleur, routeur et une identité administrateur par défaut. Idéal pour les tests et l'apprentissage.

Pour ajouter la console d'administration Ziti (ZAC) à un contrôleur en cours d'exécution :

ziti ops console download --location /opt/openziti/console
ziti ops console configure /path/to/controller.yml --all --location /opt/openziti/console
# redémarrez le contrôleur, puis ouvrez https://<adresse-du-contrôleur>/zac/

Ou servez ZAC localement sans toucher à la configuration du contrôleur :

ziti run console --version latest
# ouvre https://127.0.0.1:8443. pointez-le vers n'importe quel contrôleur depuis le navigateur

En savoir plus

RessourceDescription
IntroductionConcepts de base et fonctionnement d'OpenZiti
Guides de démarrage rapideConfiguration pas à pas pour les environnements locaux, Docker et hébergés
Modèles Zero TrustPlongée dans les trois modèles de déploiement
Référence du tunnelerCommencez sans aucune modification de code

Architecture

Le réseau overlay d'OpenZiti fonctionne au-dessus de l'infrastructure existante : n'importe quel réseau IP, n'importe quel cloud, n'importe quelle combinaison. Les composants principaux :

Contrôleur

Le contrôleur est le plan de gestion. Il gère :

  • Gestion des identités : émet et vérifie les identités cryptographiques (certificats x509) pour chaque participant du réseau
  • Application des politiques : définit quelles identités peuvent accéder à quels services, via quels routeurs de périphérie
  • État du réseau : suit les routeurs, les services et la topologie ; fournit une API REST et une console d'administration web pour la gestion

Routeurs de périphérie

Les routeurs de périphérie forment le plan de données, un maillage qui transporte le trafic chiffré entre les points de terminaison.

  • Routeurs publics sont accessibles depuis Internet, servant de points d'entrée au réseau
  • Routeurs privés (« sombres ») sont déployés à l'intérieur de réseaux privés avec uniquement des connexions sortantes

Les routeurs se découvrent automatiquement, forment des connexions maillées et utilisent le routage intelligent pour sélectionner le meilleur chemin en fonction de la latence, du débit et du coût.

Points de terminaison : SDK et tunnelers

Les points de terminaison sont la manière dont les applications et les utilisateurs se connectent au réseau OpenZiti :

  • SDK (Go, C, Python, Node.js, Java, Swift, C#) : embarquez le zero-trust directement dans votre application. L'application elle-même détient l'identité et gère le chiffrement. Pas de sidecar, pas d'agent, pas de ports d'écoute.

  • Tunnelers (Linux, Windows, macOS, iOS, Android) : applications légères qui fournissent la connectivité OpenZiti aux logiciels non modifiés. Le trafic est intercepté et routé via l'overlay de manière transparente. Aucune modification de code requise.


Zero Trust, services sombres et chiffrement de bout en bout

Zero Trust et segmentation applicative

Chaque participant (par exemple, utilisateur, service, appareil, charge de travail) dans un réseau OpenZiti porte une identité cryptographique unique basée sur des certificats x509. Lorsqu'une connexion est tentée, OpenZiti vérifie :

  1. L'identité est valide et inscrite
  2. Une politique existe accordant à cette identité l'accès au service demandé
  3. La connexion passe par un routeur de périphérie autorisé

Si l'une des vérifications échoue, la connexion est refusée. Si l'accès est révoqué ultérieurement, les connexions actives sont immédiatement interrompues. Il n'y a pas de confiance implicite basée sur l'emplacement réseau. Être sur le même LAN n'accorde pas plus d'accès qu'être à travers Internet, sauf si la politique l'autorise explicitement.

Ce modèle offre une segmentation applicative zero-trust : chaque service est autorisé indépendamment. Obtenir l'accès à un service n'accorde pas l'accès à un autre.

Services sombres

Un service « sombre » n'a pas de ports ouverts. Il n'écoute sur aucune interface réseau pour les connexions entrantes. Au lieu de cela, le service (ou un tunneler à côté) établit une connexion sortante vers un routeur de périphérie OpenZiti et s'enregistre. Les clients l'atteignent uniquement via le tissu OpenZiti, après authentification et autorisation.

Ce que cela signifie en pratique :

  • Les scans de ports ne trouvent rien : il n'y a pas de ports d'écoute à découvrir
  • Aucune surface d'attaque : vous ne pouvez pas exploiter ce que vous ne pouvez pas atteindre
  • Résistance aux DDoS : il n'y a pas de point de terminaison public à inonder
  • Invisible aux utilisateurs non autorisés : seules les identités avec une politique correspondante savent même que le service existe
  • Amical pour le NAT et les pare-feux : toutes les connexions sont sortantes, donc le CG-NAT, le double-NAT et les pare-feux restrictifs ne sont pas un problème

Les routeurs de périphérie peuvent également être sombres. Les routeurs privés n'établissent que des connexions sortantes, donc aucune règle de pare-feu entrante n'est nécessaire dans votre réseau privé.

Chiffrement de bout en bout

Avec les SDK OpenZiti, le trafic est chiffré de l'application émettrice à l'application réceptrice en utilisant libsodium pour le chemin de données et mTLS pour l'authentification d'identité. Même si les routeurs ou les réseaux intermédiaires sont compromis, le trafic ne peut pas être déchiffré ou falsifié.

Avec les tunnelers, le chiffrement couvre le chemin du tunneler au tunneler (ou du tunneler au SDK), fournissant un chiffrement machine à machine sans modifications applicatives.


SDK

Embarquez le réseautage zero-trust directement dans vos applications :

LangageDépôtNotes
Gosdk-golangUtilisé par le projet OpenZiti lui-même
Cziti-sdk-cIdéal pour les systèmes embarqués, l'IoT et les cas d'utilisation haute performance
Java / Kotlinziti-sdk-jvmInclut le support Android
Swiftziti-sdk-swiftiOS et macOS
Node.jsziti-sdk-nodejs
C# / .NETziti-sdk-csharp
Pythonziti-sdk-py

Tous les SDK sont listés sous l'organisation GitHub OpenZiti.


Sécurité

OpenZiti est un projet axé sur la sécurité. La divulgation responsable des vulnérabilités nous aide à maintenir la plateforme et ses utilisateurs en sécurité.

Signaler une vulnérabilité : Si vous découvrez un problème de sécurité, veuillez consulter notre Politique de divulgation des vulnérabilités pour tous les détails. Les problèmes sensibles doivent être signalés à [email protected]. Les problèmes non sensibles peuvent être soumis sous forme de problèmes GitHub dans le dépôt approprié. Vous devriez recevoir une réponse sous 7 jours.

Comment nous traitons les vulnérabilités : Notre Processus de réponse aux incidents de sécurité du produit décrit comment les vulnérabilités signalées sont triées, documentées et résolues – y compris comment les publications CVE sont coordonnées avec les correctifs.

Sphère de sécurité : OpenZiti et NetFoundry n'engageront pas de poursuites judiciaires contre quiconque recherche et signale des vulnérabilités de bonne foi. Nous encourageons la recherche en sécurité et attribuons les résultats signalés à leurs rapporteurs dans les avis et les notes de version.


Communauté et soutien

OpenZiti a une communauté active et en croissance :

  • Forum Discourse : Posez des questions, partagez des projets, obtenez de l'aide de la communauté et des mainteneurs
  • YouTube : Tutoriels, démos et plongées approfondies
  • Blog : Mises à jour du projet et articles techniques
  • Twitter/X : Nouvelles et annonces

Contribuer

Le projet OpenZiti accueille les contributions, y compris le code, la documentation, les rapports de bugs et les retours.

Dépôts clés

DépôtDescription
openziti/zitiPlateforme centrale : contrôleur, routeurs, CLI
sdk-golangSDK Go
ziti-sdk-cSDK C
ziti-sdk-jvmSDK Java / Kotlin / Android
ziti-sdk-swiftSDK Swift / iOS
ziti-sdk-nodejsSDK Node.js
ziti-sdk-csharpSDK C#
ziti-sdk-pySDK Python
ziti-tunnel-sdk-cTunneler Linux et SDK de tunneler central
ziti-tunnel-appleClients périphériques macOS et iOS
desktop-edge-winClient périphérique de bureau Windows
ziti-docSite de documentation

Construction à partir des sources

Consultez le tutoriel de développement local pour les instructions de construction.

Documentation pour les développeurs


Adoptants

OpenZiti est utilisé en production par des organisations telles que DeltaSecure (SOC géré), Resulticks (automatisation marketing), Chirp Wireless (IoT/télécom), GIGO Dev (environnements de développement cloud), OSMIT (informatique gérée/conformité RGPD), et des projets open-source comme zrok et BlueBubbles.

Voir la liste complète : ADOPTERS.md. Vous utilisez OpenZiti ? Nous aimerions vous ajouter — ouvrez un problème ou soumettez une PR.


Solution gérée

Pour un réseautage zero-trust sans gérer votre propre infrastructure, NetFoundry fournit un réseau OpenZiti entièrement géré et distribué mondialement en tant que service, avec des SLA, un support entreprise et un tissu mondial de routeurs de périphérie.


OpenZiti est développé et open-sourcé par NetFoundry, Inc.

Catégories