原理概述
连接器的作用
连接器主要起到通网络的作用,同时可以做到业务隐身(连接器反向连通网关,不开监听端口),使得业务处于更安全的网络环境。本地的服务器需要具备这个条件:一侧网络可连通腾讯云,一侧网络可连通业务。在这样一台服务器上部署连接器,本质作用是从业务侧向腾讯云上的 iOA 零信任网关反向连通双向加密的隧道,以供流量通行。
连接器的技术原理
1. 连接器启动,向连接器管理服务注册(tls双向认证),长连接定期发送心跳信息。
2. 用户发起访问,iOA 客户端流量拦截转发给 SaaS 网关。
3. SaaS 网关鉴权成功后,拦截并保持客户端的链接,发送控制命令(包含连接器 ID、网关地址、资源 ID 等信息)给连接器管理服务。
4. 连接器管理服务根据连接器 ID,获取连接器的长链接,通知该连接器访问业务资源并连接网关。
5. 连接器向业务资源发起链接(四层),连接器向对应的网关发起反向链接(四层/tls双向认证), 链接成功后,将业务和网关进行通信。
6. 网关将客户端链接和反向链接对接,iOA 客户端到业务资源的隧道建立完毕。
7. 请求和响应数据包通过隧道进行转发。
连接器部署机器软硬件要求
机器类型 | 操作系统 | CPU | 内存 | 存储 | 其他 |
本地主机/云服务器 | 建议使用 Centos7.6或其他 Linux 内核系统;也支持 Windows 和Windows Server 系统 | 2-4核 | 4-8G | 100G以上 | 建议单独使用机器部署,不同时运行其他业务系统 |
如何部署连接器
连接器排障
1. iOA 代理资源访问的链路
排查与连接器相关组件故障而导致的iOA代理资源访问异常时,需注意以下几点:
控制通道是连通的,才能接收控制命令。
访问通道是连通的,才能成功访问业务资源。
需保障 iOA 客户端网络功能正常,完成客户端与控制面(申请小票)和数据面(网关)建立连接。
需保障连接器连通状态正常(使连接器能接收从连接器管理组件下发的控制通道指令)。
需保障资源连通状态正常(确保连接器所在服务器的网络与业务资源打通)。
需保障连接器到网关的连通状态正常(连接器所在服务器网络与网关打通)。
连接器问题排查主要关注链路2-4,在此之前可先前往 iOA 控制台查看 NGN代理访问日志 的错误信息列。
2. 查看代理访问日志错误信息
错误信息 | 备注 | 处理方式 |
打通通道超时 | 连接器出口网络异常 | 排查连接器所属机器网络 |
租户分组连接器不存在 | 资源配置异常 | 控制台网关资源列表重新配置专线分组 |
3. 查看连接器连通状态
4. 查看资源连通状态
说明:
资源连通状态依赖于连接器到业务侧的连通性、连接器到 iOA 网关侧的连通性,因此请确保连接器对两侧的网络可达。
连接器通过周期性向业务发起探测包,并将探测结果上报控制台,有以下几种状态:
连通状态 | 备注 | 处理方式 |
正常 | 连接器到业务/iOA 网关网络连接正常 | 无需处理。 |
异常 | 连接器到业务/iOA 网关网络连接异常 | 1. 检查连接器到业务的网络是否连通。 2. 检查连接器到 iOA 网关的网络是否连通。 3. 如果配置地址段、端口段、泛域名等方式,由于连接器会随机探测,因此可能会探测到本身无法访问的地址导致显示异常。 |
检测中 | 资源连通性检测中 | 1. 等待连通检测通过。 2. 如果隧道资源配置了泛域名,可能会一直处于检测中的状态,可将资源修改成明细域名。如不影响使用则可以忽略。 |
5. 查看连接器到网关的网络连通性
地址类型 | 示例 | 说明 |
连接器管理服务地址 | ch1.channel.gateway.tencentwsd.cn:30226 | 连接器注册、上报心跳信息(连接器连通状态)。 |
反向连接服务地址 | ch2-{租户id}.channel.gateway.tencentwsd.cn:30225 | 连接器访问资源,反向连接该服务,再对接网关,打通后即可访问资源。 对于共享带宽的用户,反向连接服务地址的端口是30225-30324其中的一个,在您的 iOA 初始化时进行分配。 |
控制面上报数据地址 | scs.gateway.tencent.com:443 | 上报 NGN 代理访问日志、资源连通状态日志、连接器连通状态日志。 |
WireGuard 通道服务地址 | wg1.channel.gateway.tencentwsd.cn(ip:13303) | 网关 WireGuard 服务地址(UDP 协议)。 |
6. 如何确认连接器与网关的连通性
在连接器所属机器,执行 Telnet 命令:
telnet ch1.channel.gateway.tencentwsd.cn 30226telnet ch2-{租户id}.channel.gateway.tencentwsd.cn 30225telnet scs.gateway.tencent.com 443
说明:
上述地址仅为示例,详细地址请前往 专线管理页面 说明栏中获取。
域名可以换成从控制台上获取的 IP。
WireGuard 通道服务地址使用 UDP 协议,只需放通无需使用 telnet 测试。
租户 id 是指腾讯云账号 APPID,可在账号信息处查看。
7. 连接器与客户端访问业务延迟测试
客户端访问业务延迟测试图例说明:
流程序号 | 说明 |
0 | 票据申请:影响资源的第一次访问,同一资源申请票据之后,本地会缓存30分钟。 |
1 | 端侧接入:使用您的网络运营商的主干网络,这部分网络质量依赖于网络运营商。 |
2 | 票据校验,目前网关可以增加缓存的方式,减少跟票据服务的网络交互。 |
3 | 通知信息:使用您的网络运营商的主干网络,这部分网络质量依赖于网络运营商。 |
4 | 连接器接入:使用您的网络运营商的主干网络,这部分网络质量依赖于网络运营商。 |
当前延迟测试主要集中在 iOA 客户端侧(用户侧)接入和连接器接入这两个流程,测试方法使用附件的工具,示例如下:
ssl-handshake -i 1000 -c 500 网关地址
//网关地址为: ch2-{腾讯云账号appid}.channel.gateway.tencentwsd.cn:9443
//建议使用 IP 格式,详细地址获取见下方说明。
说明:
在不同系统平台上测试时,需选择对应平台测试工具,可通过以下链接获取:
平台 | 下载链接 |
Windows | |
Mac | |
Linux |
连接器文件说明
文件/文件夹名称 | 备注 | 处理方式 |
bin | 存放软件执行库 | 无需变动 |
cert | 存放证书文件 | 无需变动 |
config | 存放程序配置文件 | 无需变动 |
connector | 连接器运行程序 | 运行启动/关闭 |
logs | 存放连接器日志文件 | 排查错误时使用 |
pid | 连接器运行时进程 id | 无需变动 |
update | 升级相关文件 | 无需变动 |
indep_update_info | 版本信息 | 无需变动 |
welcome.html | 本地开箱页面(http 服务) | 无需变动 |
README.md | 存放连接器部署文档 md 文件 |