
ziti v1.6.19
Plataforma de rede de confiança zero que torna serviços invisíveis com identidade criptográfica, acesso baseado em políticas e criptografia de ponta a ponta. Substitui VPNs, protege IoT e conecta ambientes multi-cloud sem portas abertas.
OpenZiti
OpenZiti é uma plataforma de rede de confiança zero (zero-trust) de código aberto que torna os serviços de rede invisíveis para usuários não autorizados. Cada conexão, seja de um usuário, serviço, dispositivo ou carga de trabalho, é autenticada com identidade criptográfica, autorizada por política e criptografada de ponta a ponta.
O OpenZiti funciona tanto com aplicativos existentes (usando túneis leves sem necessidade de alterações de código) quanto com novos aplicativos (usando SDKs embutidos para o modelo de confiança zero mais forte). Isso o torna prático tanto para ambientes brownfield quanto para desenvolvimento greenfield.
Criado e patrocinado pela NetFoundry. Licenciado sob Apache 2.0.
Índice
- Casos de Uso
- Principais Capacidades
- Três Modelos de Implantação
- Primeiros Passos
- Arquitetura
- Confiança Zero, Serviços Escuros e Criptografia de Ponta a Ponta
- SDKs
- Comunidade & Suporte
- Contribuindo
- Adotantes
- Solução Gerenciada
Casos de Uso
O OpenZiti permite que você estenda a confiança zero para qualquer lugar, para qualquer caso de uso, incluindo cargas de trabalho e fluxos de trabalho não humanos, através de múltiplas redes e terceiros. A seguir estão alguns casos de uso comuns.
Substituir VPNs
Forneça acesso seguro a serviços internos sem clientes VPN, dores de cabeça com split tunneling ou gargalos de concentradores. Cada serviço é autorizado individualmente. Sem o problema "uma vez que você entra, pode acessar tudo".
APIs e Serviços Escuros
Torne APIs e serviços invisíveis para a internet. Portas de escuta zero significam superfície de ataque zero. Clientes autorizados se conectam através do OpenZiti; todos os outros não veem nada.
IoT e Identidade Não Humana
Dê a cada dispositivo, sensor e máquina uma identidade criptográfica única. O modelo de identidade do OpenZiti funciona para cargas de trabalho não humanas tão bem quanto para usuários humanos, fornecendo autenticação forte para as conexões máquina-a-máquina que compõem a maioria do tráfego de rede moderno.
Cargas de Trabalho com Confiança Zero
Proteja a comunicação entre cargas de trabalho entre nuvens e ambientes. Os serviços se autenticam com identidade criptográfica, não com localização de rede. Sem segredos compartilhados, sem listas de permissão de IP, sem autoridade ambiente.
IA Agentic
Proteja a comunicação agente-serviço e agente-agente com identidade criptográfica para cada participante de IA. Servidores MCP, endpoints de ferramentas e LLMs privados permanecem escuros, sem portas de escuta ou URLs públicos. Agentes autenticam com identidades fortes e únicas e alcançam apenas os recursos que a política permite, para que fluxos de trabalho autônomos obtenham o acesso necessário sem autoridade ambiente sobre todo o resto.
Conectividade Multi-Nuvem e Híbrida
Uma única rede overlay entre AWS, Azure, GCP, data centers locais e locais de borda. Sem ferramentas de rede específicas de nuvem, sem túneis VPN entre ambientes, sem acordos complexos de peering.
Acesso a Serviços Auto-Hospedados
Acesse serviços de laboratório doméstico ou auto-hospedados como Nextcloud, Home Assistant, servidores de mídia e ambientes de desenvolvimento de qualquer lugar. Sem portas de roteador abertas, sem DNS dinâmico, sem dependência de serviços de túnel de terceiros. Você controla todo o caminho.
Kubernetes e Serviços Entre Clusters
Conecte serviços entre clusters Kubernetes sem regras complexas de ingress, sidecars de malha de serviços ou túneis VPN entre clusters. Funciona além do Kubernetes, suportando a conexão de serviços k8s a VMs, bare metal, dispositivos IoT ou qualquer outra coisa na overlay.
Principais Capacidades
| Capacidade | Descrição |
|---|---|
| Serviços Escuros | Serviços têm zero portas de escuta. Invisíveis para scanners e usuários não autorizados. |
| Identidade para Tudo | Identidade criptográfica para usuários, serviços, dispositivos e cargas de trabalho não humanas (NHI). Não baseada em IP. |
| Operações Baseadas em Identidade | Gerencie redes através de identidades e políticas em vez de endereços IP e regras de firewall. Simplifica operações e elimina a configuração manual de rede. |
| Criptografia de Ponta a Ponta | Dados criptografados da origem ao destino usando libsodium. mTLS para autenticação. Confiança zero no caminho da rede. |
| Sem VPNs ou Portas Abertas | As conexões são roteadas através da overlay do OpenZiti. Sem clientes VPN, sem regras de firewall de entrada, sem portas expostas. |
| Roteamento Inteligente | Malha de tecido com seleção inteligente de caminho para desempenho e confiabilidade. |
| Implantação Flexível | Embuta SDKs, use tuneladores ou implante no nível da rede. Misture e combine por serviço. |
| Acesso Orientado por Políticas | Políticas granulares baseadas em identidade. O acesso pode ser revogado em tempo real, encerrando conexões ativas. |
| APIs REST Programáveis | API de gerenciamento completa para automação e integração. Console de administração baseado na web incluído. |
| Totalmente Auto-Hospedável | Execute toda a plataforma em sua infraestrutura. Sem dependências de fornecedores. Código aberto, Apache 2.0. |
Três Modelos de Implantação
O OpenZiti suporta três modelos de confiança zero. Misture-os em uma única rede e migre entre eles ao longo do tempo.
Acesso de Rede
Implante um roteador de borda OpenZiti em uma zona de rede confiável. O tráfego entra na overlay a partir de clientes autenticados e sai na rede privada onde os serviços são executados.
- Alterações de código: Nenhuma
- Agente no host do serviço: Nenhum
- Modelo de segurança: Acesso baseado em identidade no limite da rede. Semelhante a um gateway, mas com identidade criptográfica e transporte criptografado.
Acesso de Host
Execute um tunelador OpenZiti no mesmo host do seu serviço. O tunelador lida com identidade, autenticação e criptografia. O serviço só precisa aceitar conexões do localhost.
- Alterações de código: Nenhuma
- Configuração: Instale o tunelador, inscreva a identidade
- Modelo de segurança: Limite de confiança no SO do host. O serviço é escuro para a rede e só pode ser alcançado através do tunelador.
Acesso de Aplicação (Mais Forte)
Embuta um SDK OpenZiti diretamente nos aplicativos cliente e/ou servidor. O próprio aplicativo detém a identidade criptográfica e criptografa o tráfego em processo. Não existem portas de escuta, nem mesmo no localhost.
- Alterações de código: Sim
- Modelo de segurança: Mais forte. Criptografia de ponta a ponta em processo. Totalmente escuro. Identidade na camada de aplicação, não na rede, não no host.
Por onde começar: Muitas equipes começam com Acesso de Host (tuneladores) para serviços existentes. Isso é implantado em minutos, sem alterações de código. Para novo desenvolvimento ou cargas de trabalho de alta segurança, o Acesso de Aplicação (SDKs) fornece a postura de confiança zero mais forte.
Primeiros Passos
Os seguintes Quick Starts mostram como configurar uma rede OpenZiti local para desenvolvimento, teste e aprendizado. Para implantações de produção, consulte a documentação do produto em https://netfoundry.io/docs/openziti/category/deployments/.
Quick Start com Docker
A maneira mais rápida de obter uma rede OpenZiti local em execução:
wget https://get.openziti.io/dock/all-in-one/compose.yml
docker compose up
Isso inicia um controlador, roteador de borda e o console Ziti em uma única pilha do compose. O console está disponível em https://localhost:1280/zac/. A partir daqui você pode criar identidades, definir serviços e configurar políticas de acesso.
Consulte o quickstart all-in-one Docker para obter detalhes completos, incluindo opções de armazenamento, variáveis de ambiente e uso da CLI.
Quick Start com a CLI
Baixe o binário ziti mais recente dos Lançamentos do GitHub, então:
ziti edge quickstart
Isso inicia uma rede de desenvolvimento local: controlador, roteador e uma identidade de administrador padrão. Ideal para teste e aprendizado.
Para adicionar o Console de Administração Ziti (ZAC) a um controlador em execução:
ziti ops console download --location /opt/openziti/console
ziti ops console configure /path/to/controller.yml --all --location /opt/openziti/console
# reinicie o controlador, então abra https://<endereço-do-controlador>/zac/
Ou sirva o ZAC localmente sem tocar na configuração do controlador:
ziti run console --version latest
# abre https://127.0.0.1:8443. aponte para qualquer controlador a partir do navegador
Saiba Mais
| Recurso | Descrição |
|---|---|
| Introdução | Conceitos principais e como o OpenZiti funciona |
| Guias de Quickstart | Configuração passo a passo para ambientes locais, Docker e hospedados |
| Modelos de Confiança Zero | Aprofundamento nos três modelos de implantação |
| Referência de Tuneladores | Comece com zero alterações de código |
Arquitetura
A rede overlay do OpenZiti é executada sobre a infraestrutura existente: qualquer rede IP, qualquer nuvem, qualquer combinação. Os componentes principais:
Controlador
O controlador é o plano de gerenciamento. Ele lida com:
- Gerenciamento de identidades: emite e verifica identidades criptográficas (certificados x509) para cada participante na rede
- Aplicação de políticas: define quais identidades podem acessar quais serviços, através de quais roteadores de borda
- Estado da rede: rastreia roteadores, serviços e topologia; fornece uma API REST e um console de administração baseado na web para gerenciamento
Roteadores de Borda
Os roteadores de borda formam o plano de dados, uma malha de tecido que transporta tráfego criptografado entre endpoints.
- Roteadores públicos são acessíveis a partir da internet, servindo como pontos de entrada para a rede
- Roteadores privados ("escuros") são implantados dentro de redes privadas com apenas conexões de saída
Os roteadores descobrem uns aos outros automaticamente, formam conexões de malha e usam roteamento inteligente para selecionar o melhor caminho com base em latência, throughput e custo.
Endpoints: SDKs e Tuneladores
Os endpoints são como aplicativos e usuários se conectam à rede OpenZiti:
-
SDKs (Go, C, Python, Node.js, Java, Swift, C#): incorporam confiança zero diretamente em seu aplicativo. O próprio aplicativo detém a identidade e lida com a criptografia. Sem sidecar, sem agente, sem portas de escuta.
-
Tuneladores (Linux, Windows, macOS, iOS, Android): aplicativos leves que fornecem conectividade OpenZiti a software não modificado. O tráfego é interceptado e roteado através da overlay de forma transparente. Nenhuma alteração de código necessária.
Confiança Zero, Serviços Escuros e Criptografia de Ponta a Ponta
Confiança Zero e Segmentação de Aplicações
Cada participante (ex: usuário, serviço, dispositivo, carga de trabalho) em uma rede OpenZiti carrega uma identidade criptográfica única apoiada por certificados x509. Quando uma conexão é tentada, o OpenZiti verifica:
- A identidade é válida e inscrita
- Existe uma política concedendo àquela identidade acesso ao serviço solicitado
- A conexão é através de um roteador de borda autorizado
Se alguma verificação falhar, a conexão é negada. Se o acesso for revogado posteriormente, as conexões ativas são encerradas imediatamente. Não há confiança implícita baseada na localização da rede. Estar na mesma LAN não concede mais acesso do que estar na internet, a menos que a política permita explicitamente.
Este modelo fornece segmentação de aplicações com confiança zero: cada serviço é autorizado independentemente. Obter acesso a um serviço não concede acesso a nenhum outro.
Serviços Escuros
Um serviço "escuro" não tem portas abertas. Ele não escuta em nenhuma interface de rede para conexões de entrada. Em vez disso, o serviço (ou um tunelador ao seu lado) faz uma conexão de saída para um roteador de borda OpenZiti e se registra. Os clientes o alcançam apenas através da malha OpenZiti, após autenticação e autorização.
O que isso significa na prática:
- Varreduras de porta não encontram nada: não há portas de escuta para descobrir
- Sem superfície de ataque: você não pode explorar o que não pode alcançar
- Resistência a DDoS: não há endpoint público para inundar
- Invisível para usuários não autorizados: apenas identidades com política correspondente sabem da existência do serviço
- Amigável para NAT e firewall: todas as conexões são de saída, então CG-NAT, NAT duplo e firewalls restritivos não são uma preocupação
Os roteadores de borda também podem ser escuros. Roteadores privados fazem apenas conexões de saída, então nenhuma regra de firewall de entrada é necessária em sua rede privada.
Criptografia de Ponta a Ponta
Com SDKs OpenZiti, o tráfego é criptografado do aplicativo de envio para o aplicativo de recebimento usando libsodium para o caminho de dados e mTLS para autenticação de identidade. Mesmo que roteadores ou redes intermediárias sejam comprometidos, o tráfego não pode ser descriptografado ou adulterado.
Com tuneladores, a criptografia cobre o caminho do tunelador ao tunelador (ou tunelador ao SDK), fornecendo criptografia máquina-a-máquina sem alterações no aplicativo.
SDKs
Incorpore redes de confiança zero diretamente em seus aplicativos:
| Linguagem | Repositório | Notas |
|---|---|---|
| Go | sdk-golang | Usado pelo próprio projeto OpenZiti |
| C | ziti-sdk-c | Ideal para sistemas embarcados, IoT e casos de uso de alto desempenho |
| Java / Kotlin | ziti-sdk-jvm | Inclui suporte para Android |
| Swift | ziti-sdk-swift | iOS e macOS |
| Node.js | ziti-sdk-nodejs | |
| C# / .NET | ziti-sdk-csharp | |
| Python | ziti-sdk-py |
Todos os SDKs estão listados sob a organização OpenZiti no GitHub.
Segurança
O OpenZiti é um projeto focado em segurança. A divulgação responsável de vulnerabilidades nos ajuda a manter a plataforma e seus usuários seguros.
Relatando uma vulnerabilidade: Se você descobrir um problema de segurança, revise nossa Política de Divulgação de Vulnerabilidades para obter detalhes completos. Problemas sensíveis devem ser relatados para [email protected]. Problemas não sensíveis podem ser arquivados como issues no GitHub no repositório apropriado. Você deve receber uma resposta dentro de 7 dias.
Como lidamos com vulnerabilidades: Nosso Processo de Resposta a Incidentes de Segurança de Produto descreve como as vulnerabilidades relatadas são triadas, documentadas e resolvidas — incluindo como os lançamentos de CVE são coordenados com as correções.
Porto seguro: O OpenZiti e a NetFoundry não tomarão medidas legais contra qualquer pessoa que pesquise e relate vulnerabilidades de boa fé. Incentivamos a pesquisa de segurança e atribuímos as descobertas relatadas a seus relatores em avisos e notas de lançamento.
Comunidade & Suporte
O OpenZiti tem uma comunidade ativa e crescente:
- Fórum Discourse: Faça perguntas, compartilhe projetos, obtenha ajuda da comunidade e dos mantenedores
- YouTube: Tutoriais, demonstrações e análises aprofundadas
- Blog: Atualizações do projeto e artigos técnicos
- Twitter/X: Notícias e anúncios
Contribuindo
O projeto OpenZiti recebe contribuições incluindo código, documentação, relatórios de bugs e feedback.
Principais Repositórios
| Repositório | Descrição |
|---|---|
| openziti/ziti | Plataforma central: controlador, roteadores, CLI |
| sdk-golang | SDK Go |
| ziti-sdk-c | SDK C |
| ziti-sdk-jvm | SDK Java / Kotlin / Android |
| ziti-sdk-swift | SDK Swift / iOS |
| ziti-sdk-nodejs | SDK Node.js |
| ziti-sdk-csharp | SDK C# |
| ziti-sdk-py | SDK Python |
| ziti-tunnel-sdk-c | Tunelador Linux e SDK de tunelador central |
| ziti-tunnel-apple | Clientes de borda macOS e iOS |
| desktop-edge-win | Cliente de borda Windows desktop |
| ziti-doc | Site de documentação |
Compilando a Partir do Código Fonte
Consulte o tutorial de desenvolvimento local para instruções de compilação.
Documentação para Desenvolvedores
- Visão Geral do Desenvolvedor
- Desenvolvimento Local
- Implantação Local
- PKI do Controlador
- Notas de Lançamento
Adotantes
O OpenZiti é usado em produção por organizações incluindo DeltaSecure (SOC gerenciado), Resulticks (automação de marketing), Chirp Wireless (IoT/telecom), GIGO Dev (ambientes de desenvolvimento em nuvem), OSMIT (TI gerenciada/conformidade GDPR) e projetos de código aberto como zrok e BlueBubbles.
Veja a lista completa: ADOTANTES.md. Usando o OpenZiti? Adoraríamos adicioná-lo — abra uma issue ou envie um PR.
Solução Gerenciada
Para redes de confiança zero sem gerenciar sua própria infraestrutura, a NetFoundry fornece uma rede OpenZiti totalmente gerenciada e distribuída globalmente como serviço, com SLAs, suporte empresarial e uma malha global de roteadores de borda.
OpenZiti é desenvolvido e open-sourced pela NetFoundry, Inc.