OpenZiti:让网络服务对未授权用户完全不可见
OpenZiti:让网络服务对未授权用户完全不可见
OpenZiti 是一个开源的零信任网络平台,在 GitHub 上拿到了 4,000+ 的 Star。

OpenZiti 的核心思路:让网络服务对未授权用户完全不可见。
每一个连接,不管是来自用户、设备还是工作负载,都要经过加密身份认证、策略授权和端到端加密。没有通过认证的连接会被直接拒绝,访问权限被撤销后,已建立的连接也会立即断开。
它支持两种接入方式。已有的应用可以用轻量级隧道工具,不需要改代码。新开发的应用可以嵌入 SDK,获得更强的零信任保护。

能用来干什么
替换 VPN 是最常见的用途。每个服务单独授权,不存在"进了内网就能访问一切"的问题。不用再折腾客户端安装和分流隧道。
暗 API 和暗服务也是一大特点。服务不监听任何端口,端口扫描器什么都发现不了。只有通过认证的客户端才能连上,其他人连这个服务的存在都不知道。没有公开端口,也就没有攻击面。
物联网场景下,每个传感器、每台设备都有自己的加密身份。身份模型对机器和人一样有效,不需要共享密钥或 IP 白名单。
跨云连接也很方便。一套覆盖网络横跨 AWS、Azure、GCP 和本地数据中心,不需要每个云用一套专用网络工具,也不用在环境之间打隧道。
AI Agent 场景也在支持范围内。每个 Agent 都有独立的加密身份,MCP 服务器和工具端点保持不可见状态,Agent 只能访问策略允许的资源。
三种部署模式
OpenZiti 提供三种零信任部署模式,可以在同一个网络里混合使用。
网络接入模式在可信网络区域部署一个边界路由器,流量从认证客户端进入覆盖网络,然后转发到内部服务。不需要改代码,也不用在服务主机上装代理。
主机接入模式在服务所在的主机上运行隧道工具,隧道工具处理身份认证和加密,服务只需要接受本地连接。部署几分钟就能完成,同样不需要改代码。
应用接入模式是安全性最强的方案。在应用里直接嵌入 SDK,应用本身持有加密身份,在进程内完成加密。连本地端口都不暴露,信任边界收缩到应用层。
支持的 SDK
OpenZiti 提供多种语言的 SDK,包括 Go、C、Java/Kotlin、Swift、Node.js、C# 和 Python。如果不想改代码,也可以用隧道工具,支持 Linux、Windows、macOS、iOS 和 Android。
安装
通过 Docker 可以快速启动本地环境:
wget https://get.openziti.io/dock/all-in-one/compose.yml
docker compose up
这会启动一个控制器、边界路由器和管理控制台。控制台地址是 https://localhost:1280/zac/,可以在里面创建身份、定义服务和配置访问策略。
也可以直接下载 ziti 命令行工具:
ziti edge quickstart
这会启动一个本地开发网络,包括控制器、路由器和默认管理员身份,适合测试和学习。
OpenZiti 采用 Apache 2.0 开源协议,可以完全自托管运行,不依赖任何厂商。
份,适合测试和学习。
OpenZiti 采用 Apache 2.0 开源协议,可以完全自托管运行,不依赖任何厂商。
更多推荐

所有评论(0)