动态配置代理

我们拥有一批物联网设备,并且想要将端口代理给终端用户(远程诊断会话)。为了避免暴露物联网设备的 IP 地址,我们希望将其代理给终端用户。然而,这些 IP 可能是动态的,并且代理必须经过身份验证。

因此,流程如下:

  1. 用户请求远程诊断会话;
  2. 后端向 IoT 设备发送请求,检查诊断服务是否在运行,否则启动它;
  3. IoT 设备启动诊断服务并回复状态;
  4. 后端创建一个新的安全代理,代理 IoT 设备到终端用户进行身份验证;
  5. 后端回复用户与连接代理的 IP 和授权令牌;
  6. 用户通过代理连接诊断会话;

目前,我只找到了一种解决方案,即 [Ceryx](https://github.com/sourcelair/ceryx),但是它没有身份验证。 NGINX Plus 不像是一个选择,因为其显著的许可证成本,还由于它似乎不能处理这个问题。

除了调整 Cyrex 以支持身份验证之外,是否有其他解决方案?

点赞
用户369550
用户369550

使用 OpenResty,您可以使用以下方法设置代理:

这可以很容易地实现,但需要您编写一些代码。

2021-06-19 23:46:25