zrok
é uma plataforma de compartilhamento ponto a ponto de próxima geração construída sobre OpenZiti, uma sobreposição de rede programável de confiança zero. zrok
é um aplicativo nativo do Ziti .
zrok
facilita o compartilhamento de recursos tanto pública quanto privadamente. O compartilhamento público permite que você compartilhe recursos zrok
com usuários não zrok
pela Internet pública. O compartilhamento privado permite que você compartilhe diretamente seus recursos ponto a ponto com outros usuários zrok
sem alterar suas configurações de segurança ou firewall.
Como outras ofertas neste espaço, zrok
permite aos usuários compartilhar túneis para recursos de rede HTTP, TCP e UDP. zrok
também permite que os usuários compartilhem arquivos, conteúdo da web e recursos personalizados de maneira fácil e rápida ponto a ponto.
zrok
é uma plataforma extensível para compartilhamento. Inicialmente, nosso alvo são usuários técnicos. O compartilhamento super simples para usuários finais está planejado e em pendências.
Você pode começar a compartilhar usando o serviço zrok.io
em minutos. Aqui está uma sinopse do que está envolvido:
Baixe o binário para sua plataforma aqui
zrok invite
para criar uma conta no serviço
zrok enable
para habilitar seu ambiente shell para compartilhamento com o serviço
Compartilhe facilmente recursos de rede privada com usuários públicos da Internet, de forma segura, sem precisar alterar nenhuma configuração de sua rede local:
$ zrok share public localhost:8080
$ curl -s https://dslno640nct4.share.zrok.io | head
Compartilhe "unidades de rede" com usuários públicos e privados em execução em sistemas Windows, macOS ou Linux:
$ zrok share public --backend-mode drive ~/Repos/zrok
Montar e trabalhar com unidades compartilhadas é simples e funciona com qualquer aplicativo nos sistemas dos usuários finais:
Consulte o Guia de conceitos e primeiros passos para obter uma visão geral completa.
zrok
zrok
inclui um SDK que permite incorporar recursos de compartilhamento zrok
em seus próprios aplicativos. Se você estiver familiarizado com golang net.Conn
e net.Listener
, você se sentirá em casa com nosso SDK.
zrok
// carrega o zrok EnvironmentRoot habilitado, err := Environment.LoadRoot() // solicita um compartilhamento para seus recursoshr, err := sdk.CreateShare(root, &sdk.ShareRequest{BackendMode: sdk.TcpTunnelBackendMode,ShareMode: sdk.PrivateShareMode, / / ...})// aceita solicitações para seu resourcelistener, err := sdk.NewListener(shr.Token, root)
zrok
simples// carrega o Zrok EnvironmentRoot habilitado, err := Environment.LoadRoot()// solicita acesso a um recurso zrok compartilhado, err := sdk.CreateAccess(root, &sdk.AccessRequest{ShareToken: shrToken})// estabelece uma conexão com o recurso diretamenteconn, err := sdk.NewDialer(shrToken, root)
Esta postagem do blog fornece mais detalhes sobre como começar a usar o zrok
SDK.
zrok
foi projetado para ser ampliado para suportar instâncias de serviço extremamente grandes. zrok.io
é uma instância de serviço público operada pela NetFoundry usando a mesma base de código disponível para ambientes auto-hospedados.
zrok
também foi projetado para ser reduzido para suportar implantações extremamente pequenas. Execute zrok
e OpenZiti em um Raspberry Pi!
O binário zrok
único contém tudo que você precisa para operar ambientes zrok
e também hospedar suas próprias instâncias de serviço. Basta adicionar uma rede OpenZiti e você estará pronto e pronto.
Consulte o Guia de auto-hospedagem para obter detalhes sobre como executar sua própria instância de serviço zrok
.
Mantemos uma lista de reprodução crescente de vídeos com foco em vários aspectos do zrok
. Isso inclui a série "horário de expediente", que são vídeos de formato mais longo que se aprofundam na implementação do zrok
e apresentam alguns dos recursos e capacidades mais recentes:
Se você estiver interessado em construir zrok
para si mesmo em vez de usar um pacote lançado, consulte BUILD.md
Se você gostaria de contribuir com zrok
, seria ótimo. Por favor, consulte nossa página CONTRIBUTING.md e siga o CODE_OF_CONDUCT.md.