openziti/ziti
GitHub: openziti/ziti
面向应用嵌入的可编程零信任网络平台,提供从 SDK 到基础设施的全栈解决方案。
Stars: 3896 | Forks: 236

[](https://github.com/openziti/ziti/actions/workflows/main.yml?query=branch%3Arelease-next) [](https://goreportcard.com/report/github.com/openziti/ziti) [](https://pkg.go.dev/github.com/openziti/ziti) [](https://openziti.discourse.group/) [](LICENSE)
# OpenZiti OpenZiti 代表了面向应用程序的下一代安全、开源网络解决方案。OpenZiti 包含多个组件。 ## 快速参考 * [文档](https://openziti.io/docs/learn/introduction/) * [开发者概览](./doc/001-overview.md) * [本地开发教程](./doc/002-local-dev.md) * [本地部署教程](./doc/003-local-deploy.md) * [Controller PKI 教程](./doc/004-controller-pki.md) * [发布说明](./CHANGELOG.md) ## 什么是 OpenZiti? * OpenZiti fabric 提供了具有内置智能路由的可扩展、可插拔网络 mesh * OpenZiti edge 组件为您的网络提供了一个安全的 Zero Trust 入口点 * OpenZiti SDK 允许您将 OpenZiti 直接集成到您的应用程序中 * OpenZiti 隧道器和代理允许现有应用程序和网络利用 OpenZiti 部署 ### 安全特性 * Zero Trust 和应用程序分段 * Dark Services 和 Routers * 端到端加密 ### 性能与可靠性 * 具有智能路由的可扩展 mesh fabric * 支持服务的负载均衡,适用于水平扩展和故障转移设置 ### 开发者关注点 * [开源代码,基于 Apache 2.0 许可证提供](https://github.com/openziti) * 完全可编程的 REST 管理 API * [适用于多种编程语言的 SDK](https://openziti.io/docs/reference/developer/sdk) * [特定于应用程序的配置存储,允许对配置进行集中管理,允许您添加特定于应用程序的结构化配置](https://openziti.io/docs/learn/core-concepts/config-store/overview) * 可扩展的 fabric,允许您添加自己的 * 负载均衡算法 * 互联协议 * 入口和出口协议 * 指标收集框架 * 控制和管理平面消息传递及语义 ### 轻松管理 * [灵活且富有表现力的策略模型,用于管理对服务和 edge router 的访问](https://openziti.io/docs/learn/core-concepts/security/authorization/policies/overview) * 基于 Web 的管理控制台 * [适用于多种操作系统的预构建隧道器和代理,包括移动平台](https://openziti.io/docs/reference/tunnelers) 让我们解析一下其中的一些流行词。 ### Zero Trust/应用程序分段 许多网络安全解决方案就像围绕内部网络的一堵墙。一旦穿过这堵墙,您就可以访问里面的所有内容。Zero Trust 解决方案不仅强制执行对网络的访问,还强制执行对该网络内单个应用程序的访问。 OpenZiti 系统中的每个客户端都必须拥有一个配置了证书的身份。这些证书用于建立安全通信通道,以及用于对相关身份进行认证和授权。每当客户端尝试访问网络应用程序时,OpenZiti 将首先确保该身份有权访问该应用程序。如果访问权限被撤销,开放的网络连接将被关闭。 此模型使 OpenZiti 系统能够提供对多个应用程序的访问,同时确保客户端只能访问那些已被授予访问权限的应用程序。 除了要求客户端进行基于证书的认证外,OpenZiti 还使用证书来授权 OpenZiti 组件之间的通信。 ### Dark Services 和 Routers 网络应用程序/服务可以具有不同级别的可访问性。 1. 许多网络服务对全世界开放。然后,该服务依靠认证和授权策略来防止不受欢迎的访问。 2. 防火墙可用于限制对特定 IP 或范围的访问。这以牺牲灵活性为代价提高了安全性。添加用户可能很复杂,并且用户可能无法轻松切换设备或远程访问服务。 3. 服务可以放在 VPN 之后,或者只能由内部网络访问,但这种方法有一些缺点。 1. 如果您出于任何原因可以访问 VPN 或内部网络,该 VPN 中的所有服务都会变得对您更加脆弱。 2. VPN 通常不适合外部客户或用户。 3. 对于最终用户,VPN 增加了一个额外的步骤,每次他们想要访问服务时都需要执行该步骤。 4. 服务可以被设为 dark,这意味着它们没有打开任何端口供任何人尝试连接。 将某些东西设为 dark 可以通过几种方式完成,但在 OpenZiti 中通常的处理方式是服务向外延伸并与 OpenZiti 网络 fabric 建立一个或多个连接。进入 fabric 的客户端可以在经过认证和授权后通过这些连接访问服务。 构成 fabric 的 OpenZiti router 也可以是 dark 的。位于私有网络中的 router 通常会被设为 dark。这些 router 将向私有网络外连接以与 controller 通信,并建立连接以加入网络 fabric mesh。这允许您的私有网络中的服务和 router 仅建立出站连接,因此无需为入站流量打开任何漏洞。 如果服务是使用 OpenZiti SDK 实现的,则它们可以是完全 dark 的。如果这不可能,可以将 OpenZiti 隧道器或代理与服务部署在一起。然后,该服务只需要允许来自本地机器或网络的连接,具体取决于您将代理部署在离服务多近的地方。 ### 端到端加密 如果您利用 OpenZiti 的开发者 SDK 并将 OpenZiti 嵌入到您的客户端和服务器应用程序中,您的流量可以配置为从客户端应用程序到服务器应用程序进行无缝加密。如果您更喜欢使用隧道器或代理应用程序,流量可以从机器到机器或从私有网络到私有网络为您加密。也支持上述的各种组合。 端到端加密意味着即使客户端和服务器之间的系统遭到破坏,您的流量也无法被解密或篡改。 ## OpenZiti 入门 如果您想立即全身心投入,可以跟随我们的 [快速启动指南](https://openziti.io/docs/learn/quickstarts/) 之一进行操作。这些指南旨在快速建立 overlay 网络,并允许您在本地运行、使用 Docker 或将其托管在任何地方。 该环境非常适合评估者了解 OpenZiti 及其提供的功能。该环境并非专为大规模部署或长期使用而设计。如果您正在寻找托管服务来帮助您运行真正的全球化、可扩展网络,请浏览 [NetFoundry 网站](https://netfoundry.io) 以了解更多信息。 ## 从源代码构建 有关构建说明,请参阅 [本地开发教程](./doc/002-local-dev.md)。 ## 采用者 有兴趣了解哪些公司正在使用 OpenZiti 吗?请查看 [此处使用 OpenZiti 的项目和公司列表](./ADOPTERS.md)。 有兴趣将您的项目添加到列表中吗?在 github 上添加一个 issue,或者更好的是,随时提交一个 pull request!将您的项目添加进去的说明包含在 [采用者列表](./ADOPTERS.md) 中。 ## 支持 我们有一个非常活跃的 Discourse 论坛。加入对话吧!如果可以的话,请帮助他人。如果您想提问或只是看看,请访问 [OpenZiti Discourse 论坛](https://openziti.discourse.group/)。我们喜欢收到问题,快来参与吧! ### 贡献 OpenZiti 项目欢迎包括但不限于代码、文档和错误报告的贡献。 * 所有 OpenZiti 代码均可在 Github 的 [OpenZiti](https://github.com/openziti) 组织下找到。 * [ziti](https://github.com/openziti/ziti):构建所有 OpenZiti 可执行文件的顶级项目 * [edge](https://github.com/openziti/edge):edge 组件和模型,包括身份、策略和配置 * [fabric](https://github.com/openziti/fabric):fabric 项目,包括核心 controller 和 router * [foundation](https://github.com/openziti/foundation):包含跨多个项目使用的库代码的项目 * SDK * [ziti-sdk-c](https://github.com/openziti/ziti-sdk-c):C SDK * [sdk-golang](https://github.com/openziti/sdk-golang):Go SDK * [ziti-sdk-jvm](https://github.com/openziti/ziti-sdk-jvm):基于 JVM 语言的 SDK * [ziti-sdk-swift](https://github.com/openziti/ziti-sdk-swift):Swift SDK * [ziti-sdk-nodejs](https://github.com/openziti/ziti-sdk-nodejs):NodeJS SDK * [ziti-sdk-csharp](https://github.com/openziti/ziti-sdk-csharp):C# SDK * [ziti-doc](https://github.com/openziti/ziti-doc):支持静态文档网站 OpenZiti 由 [Netfoundry, Inc](https://netfoundry.io) 开发并开源。NetFoundry 继续资助和贡献于 OpenZiti。
[](https://github.com/openziti/ziti/actions/workflows/main.yml?query=branch%3Arelease-next) [](https://goreportcard.com/report/github.com/openziti/ziti) [](https://pkg.go.dev/github.com/openziti/ziti) [](https://openziti.discourse.group/) [](LICENSE)
# OpenZiti OpenZiti 代表了面向应用程序的下一代安全、开源网络解决方案。OpenZiti 包含多个组件。 ## 快速参考 * [文档](https://openziti.io/docs/learn/introduction/) * [开发者概览](./doc/001-overview.md) * [本地开发教程](./doc/002-local-dev.md) * [本地部署教程](./doc/003-local-deploy.md) * [Controller PKI 教程](./doc/004-controller-pki.md) * [发布说明](./CHANGELOG.md) ## 什么是 OpenZiti? * OpenZiti fabric 提供了具有内置智能路由的可扩展、可插拔网络 mesh * OpenZiti edge 组件为您的网络提供了一个安全的 Zero Trust 入口点 * OpenZiti SDK 允许您将 OpenZiti 直接集成到您的应用程序中 * OpenZiti 隧道器和代理允许现有应用程序和网络利用 OpenZiti 部署 ### 安全特性 * Zero Trust 和应用程序分段 * Dark Services 和 Routers * 端到端加密 ### 性能与可靠性 * 具有智能路由的可扩展 mesh fabric * 支持服务的负载均衡,适用于水平扩展和故障转移设置 ### 开发者关注点 * [开源代码,基于 Apache 2.0 许可证提供](https://github.com/openziti) * 完全可编程的 REST 管理 API * [适用于多种编程语言的 SDK](https://openziti.io/docs/reference/developer/sdk) * [特定于应用程序的配置存储,允许对配置进行集中管理,允许您添加特定于应用程序的结构化配置](https://openziti.io/docs/learn/core-concepts/config-store/overview) * 可扩展的 fabric,允许您添加自己的 * 负载均衡算法 * 互联协议 * 入口和出口协议 * 指标收集框架 * 控制和管理平面消息传递及语义 ### 轻松管理 * [灵活且富有表现力的策略模型,用于管理对服务和 edge router 的访问](https://openziti.io/docs/learn/core-concepts/security/authorization/policies/overview) * 基于 Web 的管理控制台 * [适用于多种操作系统的预构建隧道器和代理,包括移动平台](https://openziti.io/docs/reference/tunnelers) 让我们解析一下其中的一些流行词。 ### Zero Trust/应用程序分段 许多网络安全解决方案就像围绕内部网络的一堵墙。一旦穿过这堵墙,您就可以访问里面的所有内容。Zero Trust 解决方案不仅强制执行对网络的访问,还强制执行对该网络内单个应用程序的访问。 OpenZiti 系统中的每个客户端都必须拥有一个配置了证书的身份。这些证书用于建立安全通信通道,以及用于对相关身份进行认证和授权。每当客户端尝试访问网络应用程序时,OpenZiti 将首先确保该身份有权访问该应用程序。如果访问权限被撤销,开放的网络连接将被关闭。 此模型使 OpenZiti 系统能够提供对多个应用程序的访问,同时确保客户端只能访问那些已被授予访问权限的应用程序。 除了要求客户端进行基于证书的认证外,OpenZiti 还使用证书来授权 OpenZiti 组件之间的通信。 ### Dark Services 和 Routers 网络应用程序/服务可以具有不同级别的可访问性。 1. 许多网络服务对全世界开放。然后,该服务依靠认证和授权策略来防止不受欢迎的访问。 2. 防火墙可用于限制对特定 IP 或范围的访问。这以牺牲灵活性为代价提高了安全性。添加用户可能很复杂,并且用户可能无法轻松切换设备或远程访问服务。 3. 服务可以放在 VPN 之后,或者只能由内部网络访问,但这种方法有一些缺点。 1. 如果您出于任何原因可以访问 VPN 或内部网络,该 VPN 中的所有服务都会变得对您更加脆弱。 2. VPN 通常不适合外部客户或用户。 3. 对于最终用户,VPN 增加了一个额外的步骤,每次他们想要访问服务时都需要执行该步骤。 4. 服务可以被设为 dark,这意味着它们没有打开任何端口供任何人尝试连接。 将某些东西设为 dark 可以通过几种方式完成,但在 OpenZiti 中通常的处理方式是服务向外延伸并与 OpenZiti 网络 fabric 建立一个或多个连接。进入 fabric 的客户端可以在经过认证和授权后通过这些连接访问服务。 构成 fabric 的 OpenZiti router 也可以是 dark 的。位于私有网络中的 router 通常会被设为 dark。这些 router 将向私有网络外连接以与 controller 通信,并建立连接以加入网络 fabric mesh。这允许您的私有网络中的服务和 router 仅建立出站连接,因此无需为入站流量打开任何漏洞。 如果服务是使用 OpenZiti SDK 实现的,则它们可以是完全 dark 的。如果这不可能,可以将 OpenZiti 隧道器或代理与服务部署在一起。然后,该服务只需要允许来自本地机器或网络的连接,具体取决于您将代理部署在离服务多近的地方。 ### 端到端加密 如果您利用 OpenZiti 的开发者 SDK 并将 OpenZiti 嵌入到您的客户端和服务器应用程序中,您的流量可以配置为从客户端应用程序到服务器应用程序进行无缝加密。如果您更喜欢使用隧道器或代理应用程序,流量可以从机器到机器或从私有网络到私有网络为您加密。也支持上述的各种组合。 端到端加密意味着即使客户端和服务器之间的系统遭到破坏,您的流量也无法被解密或篡改。 ## OpenZiti 入门 如果您想立即全身心投入,可以跟随我们的 [快速启动指南](https://openziti.io/docs/learn/quickstarts/) 之一进行操作。这些指南旨在快速建立 overlay 网络,并允许您在本地运行、使用 Docker 或将其托管在任何地方。 该环境非常适合评估者了解 OpenZiti 及其提供的功能。该环境并非专为大规模部署或长期使用而设计。如果您正在寻找托管服务来帮助您运行真正的全球化、可扩展网络,请浏览 [NetFoundry 网站](https://netfoundry.io) 以了解更多信息。 ## 从源代码构建 有关构建说明,请参阅 [本地开发教程](./doc/002-local-dev.md)。 ## 采用者 有兴趣了解哪些公司正在使用 OpenZiti 吗?请查看 [此处使用 OpenZiti 的项目和公司列表](./ADOPTERS.md)。 有兴趣将您的项目添加到列表中吗?在 github 上添加一个 issue,或者更好的是,随时提交一个 pull request!将您的项目添加进去的说明包含在 [采用者列表](./ADOPTERS.md) 中。 ## 支持 我们有一个非常活跃的 Discourse 论坛。加入对话吧!如果可以的话,请帮助他人。如果您想提问或只是看看,请访问 [OpenZiti Discourse 论坛](https://openziti.discourse.group/)。我们喜欢收到问题,快来参与吧! ### 贡献 OpenZiti 项目欢迎包括但不限于代码、文档和错误报告的贡献。 * 所有 OpenZiti 代码均可在 Github 的 [OpenZiti](https://github.com/openziti) 组织下找到。 * [ziti](https://github.com/openziti/ziti):构建所有 OpenZiti 可执行文件的顶级项目 * [edge](https://github.com/openziti/edge):edge 组件和模型,包括身份、策略和配置 * [fabric](https://github.com/openziti/fabric):fabric 项目,包括核心 controller 和 router * [foundation](https://github.com/openziti/foundation):包含跨多个项目使用的库代码的项目 * SDK * [ziti-sdk-c](https://github.com/openziti/ziti-sdk-c):C SDK * [sdk-golang](https://github.com/openziti/sdk-golang):Go SDK * [ziti-sdk-jvm](https://github.com/openziti/ziti-sdk-jvm):基于 JVM 语言的 SDK * [ziti-sdk-swift](https://github.com/openziti/ziti-sdk-swift):Swift SDK * [ziti-sdk-nodejs](https://github.com/openziti/ziti-sdk-nodejs):NodeJS SDK * [ziti-sdk-csharp](https://github.com/openziti/ziti-sdk-csharp):C# SDK * [ziti-doc](https://github.com/openziti/ziti-doc):支持静态文档网站 OpenZiti 由 [Netfoundry, Inc](https://netfoundry.io) 开发并开源。NetFoundry 继续资助和贡献于 OpenZiti。
标签:EVTX分析, EVTX分析, EVTX分析, Google搜索, Go语言, IP 地址批量处理, JSONLines, OpenZiti, PE 加载器, Prompt框架, SDP, VPN替代, 可编程网络, 安全访问, 应用嵌入, 开源, 微隔离, 日志审计, 智能路由, 暗服务, 程序破解, 端到端加密, 网络基础设施, 网络安全, 网络网格, 覆盖网络, 请求拦截, 负载均衡, 软件定义边界, 边缘计算, 隐私保护, 隧道代理, 零信任, 零信任架构