OpenZiti 客户端使用:从 Web 访问到应用集成
技术实践
1
帖子
1
发布者
7
浏览
-
本文将介绍如何使用 OpenZiti 客户端访问服务,包括桌面客户端、命令行工具和 SDK 集成三种方式。
一、客户端类型
客户端类型 适用场景 特点 Ziti Desktop Edge 桌面用户 图形界面,自动隧道 ziti-edge-tunnel 命令行 轻量级,适合服务器 SDK 集成 开发者 应用内嵌,完全控制 二、Ziti Desktop Edge 安装
下载安装
- Windows/macOS/Linux 均支持
- 从 GitHub 下载最新版本
- macOS 可用 Homebrew:
brew install --cask ziti-edge-tunnel
添加身份
- 启动 Ziti Desktop Edge 应用
- 点击「Add Identity」
- 选择 JWT 文件
- 完成注册
三、命令行客户端(ziti-edge-tunnel)
安装
# Linux curl -LO https://github.com/openziti/ziti-tunnel-sdk-c/releases/download/v0.22.5/ziti-edge-tunnel-Linux_x86_64.zip unzip ziti-edge-tunnel-Linux_x86_64.zip sudo mv ziti-edge-tunnel /usr/local/bin/注册身份
ziti-edge-tunnel enroll --jwt alice.jwt --identity alice.json启动隧道
# 前台运行 ziti-edge-tunnel run --identity alice.json # 后台运行 ziti-edge-tunnel run --identity alice.json --daemon四、通过隧道访问服务
# HTTP 服务访问 curl http://web-api.ziti/api/users # SSH 访问 ssh user@ssh-server.ziti # 数据库连接 mysql -h db-service.ziti -P 3306 -u root -p五、SDK 集成示例(Go)
import "github.com/openziti/sdk-golang/ziti" func main() { cfg, _ := ziti.NewConfigFromFile("alice.json") ctx, _ := ziti.NewContext(cfg) conn, _ := ctx.Dial("web-api") // 使用连接... }六、常见问题排查
- 无法连接服务:检查身份权限和服务状态
- 认证失败:检查 JWT 是否过期
- DNS 解析问题:手动添加 hosts 或启用 DNS 功能
相关资源
- 官方文档:https://openziti.io/docs/
- GitHub 仓库:https://github.com/openziti/ziti
- OpenZiti 中文社区:https://www.openziti.cn