我有一个设置,其中有一个应用程序需要与我们内部网上不支持内置 TLS 连接的设备进行通信。有人建议我们使用Citrix ADC执行负载平衡并提供 WAN/防火墙与接收设备之间的 TLS 接口。设置如下所述: Citrix ADC (Netscaler) TLS 终止指南。如果您向下浏览该页面,您会看到一个以“Citrix ADC TLS 终止设置”开头的部分,并且看起来有一个用于执行配置的 GUI 界面。
我安装了一个Citrix ADC CPX 的 Docker 版本使用与此类似的撰写文件:
citrixadccpx:
container_name: CPX_0
image: store/citrix/citrixadccpx:xxxxxx
privileged: true # needed for multi-core
ports:
- 9443:9443
- 22
- 9080:9080
- 161/udp
- 35021-35030
tty: true
cap_add:
- NET_ADMIN
ulimits:
core: -1
volumes:
- ./citrix:/cpx
environment:
- CPX_CORES=2
- EULA=yes
# - NS_NETMODE=”HOST”
容器正在运行并可通过 docker-exec 访问,我可以在其中运行如下命令:
# cli_script.sh "show ns config"
exec: show ns config
NetScaler IP: 172.18.0.6 (mask: 255.255.0.0)
Number of MappedIP(s): 0
Node: Standalone
System Time: Thu Aug 19 11:08:51 2021
Last Config Changed Time: Thu Aug 19 02:16:57 2021
Config Changed since Last Saved Config: TRUE
并且可以通过以下网址连接:https://192.168.0.100:9443/nitro/v1/config/
这只是显示了一堆 JSON。我希望有一个漂亮的 GUI(如参考文档中所示)来设置和管理 NetScaler。这显然是用于 REST 接口和 API 的?
所以问题是:
是否有 GUI 或合适的手册/说明来介绍如何使用“cli_script.sh”或配置文件进行设置和配置?
是否有可与 Docker 版本一起使用的 GUI?另请参阅: 在 Docker 中部署 Citrix ADC CPX 实例
我是否可以轻松地使用 NGINX 实例专门用于将 TLS 请求代理到我的其他设备?这可能更容易,因为我对 NGINX 有一些经验。以前从未使用过 Citrix Netscalar,但学习一下会很好。
同样,WAN 接口处有一个 Fortigate 路由器/防火墙。我对此不太了解,但也许它也可以用作该连接的 TLS 接口,但同样,学习如何使用 Netscalar 会很好。
Netscaler的OS主机版本(非Docker版本)是否带有GUI管理界面?那将是另一种选择。我的主机操作系统是UBUNTU 20.x。
举个例子,假设我们通过 TLS 连接在端口 11112 上有传入请求。我们可能只会让 Fortigate 将传入请求转发到运行 Docker 容器的服务器,转发到 NGINX 或 Citrix 的外部端口 11112,然后它们将(在容器网络内)代理到端点。
答案1
我不知道 CPX 是否有漂亮的 GUI 包装器,但一切都可以通过 CLI 将其包装在 cli_script.sh 中来完成
如果您想要一个漂亮的 GUI,您可以在众多流行的虚拟机管理程序之一上使用免费增值 VPX。或者使用它们并捕获它们添加的命令行配置。
注意:ADM 可以管理 CPX,因此如果您不熟悉命令行,它可以为您执行许多任务。我知道当您通过 ADM 登录 VPX 时,它会使用标准 Web 界面 (neo),并且没有机会看到任何 CPX 似乎在执行相同的操作
只需注意免费许可证的使用限制。
大多数 VPX 设置文档都包含命令行等效项,因此获取一个设置并不难。根据我的经验,netscalers 的文档比 forti* 产品好得多。
即设置负载平衡的虚拟服务器https://docs.citrix.com/en-us/citrix-adc/current-release/load-balancing/load-balancing-setup.html