AnyShare-AnyShare 7.0 访问地址为公网地址时,修改 443 端口导致服务器无法访问
关键字
公网地址、端口
适用产品
- AnyShare Enterprise 7.0.4.x
- AnyShare Express 7.0.4.x
问题描述
AnyShare 7.0.4.0 及之后版本,访问地址为公网地址时,部署控制台修改 443 端口会导致 AnyShare 无法访问。
问题影响
AnyShare 地址无法访问。
问题原因
AnyShare 7.0.4.0 及之后几个版本,访问地址修改逻辑有如下变更:
- internal:表示访问地址解析的 IP 为集群上的地址,Ingress 端口将根据访问地址的端口信息而更改;
- external:表示访问地址解析的 IP 为负载均衡器上的地址,Ingress 端口将不会根据访问地址的端口而更改,将一直保持为80/443。
解决方案
为了解决该问题,需要修改 ingress 的 hostPort 配置为外部地址访问端口,请按照以下步骤执行:
1.通过 SSH 连接 AnyShare master 节点。
2.执行以下命令,查看 class-443 配置信息。
helm get values class-443

3.假设外部地址访问端口为 9443,执行以下命令,修改 httpsPort 为 9443。
注意:修改后的端口不可以和本地已在使用中的端口重复,可以使用 ss -tunlp 查看本地端口占用情况。
helm upgrade class-443 helm_repos/nginx-ingress-controller --set service.httpsPort='9443' --reuse-values

4.等待 nginx-ingress-controller-class-443 的 pod 启动后,访问 AnyShare 正常。

更多信息
如需实现公网不通过 443 端口访问 AnyShare,也可通过将公网地址访问端口例如 9443 映射到 AnyShare 443 端口解决。