3
这个楼主还没有留下简介。
当前还没有回复,欢迎成为第一个参与讨论的人。
前面我们把 OpenZiti Quickstart 部署到了公网 Ubuntu 服务器。本篇继续完成客户端接入:在 Windows 电脑安装 Ziti Desktop Edge,注册身份,然后通过 Ziti 访问网络中的 HTTP 服务。
客户端访问走的是 Ziti 网络,应用服务不需要直接暴露在公网。本文以 hello.ziti 为例;请把它替换成你自己的服务域名。
开始前,确认以下内容都已配置在第 7 篇部署的公网 OpenZiti 网络中:
local-web 服务已配置 hello.ziti 作为拦截域名,端口为 80。local-web,并且有连接到公网 Router 的 Edge Router Policy。不要直接沿用另一套本地 Quickstart 网络里的身份、服务和策略:它们不会自动出现在公网网络中。如果之前是在本地网络完成服务示例,需要在公网网络里重新配置。
在 Ziti Admin Console(ZAC)中,为这台 Windows 电脑创建一个 Device 身份,例如:
text名称:windows-laptop 角色属性:windows-client 注册方式:一次性令牌(OTT)
下载生成的 JWT 文件,并在策略中允许该身份访问目标服务。如果策略使用角色属性,可以让 @windows-client Dial @local-web;同时确认该身份可以连接到公网 Router。
JWT 用于注册身份,请通过安全方式把它传到 Windows 电脑,不要贴到论坛或公开仓库。官方的 客户端身份创建与注册指南介绍了身份、角色属性和 JWT 注册流程。
从 Ziti Desktop Edge for Windows 官方安装指南进入下载页面,或直接打开 Windows 最新版本发布页,下载适合这台电脑的 Windows 安装程序。
如果发布页提供 SHA256 校验值,可以用 PowerShell 计算下载文件的哈希并对照:
powershellGet-FileHash .\下载的安装文件.exe -Algorithm SHA256
运行安装程序完成安装。安装时按提示授权网络组件;这一步需要在 Windows 上安装虚拟网络接口和相关服务。
打开 Ziti Desktop Edge,在界面中选择 ADD IDENTITY,再选择 With JWT,然后找到刚才下载的 JWT 文件。
注册成功后,客户端会向控制器完成身份注册。可以在 ZAC 中检查 windows-laptop 是否在线。若客户端界面提供服务启用开关,也确认 local-web 已启用。
官方的 Windows 一次性令牌注册说明也介绍了通过 JWT 添加身份的步骤。
在 PowerShell 或命令提示符中执行:
powershellcurl.exe -v http://hello.ziti/
成功时应收到 local-web 后端应用返回的内容。这里使用 curl.exe,避免 PowerShell 将 curl 解析成其他命令。
也可以检查域名解析:
powershellResolve-DnsName hello.ziti
Ziti Desktop Edge 会在客户端接管 Ziti 服务域名的解析和连接;因此,不需要把 hello.ziti 配成公网 DNS 记录。
身份已在线,但 hello.ziti 无法解析
hello.ziti:80。windows-laptop 是否有 Dial local-web 的权限。域名能解析,但请求超时或连接失败
Windows 客户端日志通常位于 Ziti Desktop Edge 安装目录下的 logs 文件夹;具体位置和日志说明可参考 Windows Tunneler 文档。
到这里,Windows 电脑已经通过 Ziti 身份加入网络,并可以访问 hello.ziti。客户端只需安装 Tunneler、注册身份并获得相应策略授权;应用服务继续由 Ziti 网络中的 Host 承载。