weblogic和netscaler的新手需要架构方面的帮助
我想将weblogic上的服务公开到Internet,以便移动用户可以访问webservice。当前,当用户直接访问站点时内部流量正常,例如http://xxx.internal.local:7001
我需要同时为内部用户和外部用户启用SSL端到端
以及从外部和内部访问Web服务的能力
交通流
外部用户|||| |||| Netscaler |||| Weblogic服务器
内部用户直接连接到weblogic
内部用户将使用https://xxx.internal.local:7002
(专用DNS和IP地址)
外部用户将使用https://xxx.external.com:443
(公共DNS和IP地址)
已安装SAN证书(具有本地域和外部域)并将其导入到weblogic Java密钥库中。
实现此目标的最佳方法是什么?
我们尝试过的事情
Netscaler管理员在Netscaler上配置SSL传递-例如,不进行解密和重新加密,并将443端口转发到7002
内部DNS中的CNAME设置将xxx.external.com指向xxx.internal.local
到https://xxx.internal.local:7002
的内部流量正常并且已加密
外部流量失败,并且向用户显示了证书错误
我不清楚如何配置此配置,使其具有外部域和内部域以及netscaler执行SSL桥接-是否有更好的方法来完成此操作-例如,让netscaler在VIP上卸载SSL并重新加密回weblogic并更改HTTP主机标头以匹配内部域名(反向代理)
提前致谢
最佳答案
感谢大家的反馈。测试的工作解决方案如下。
Netscaler和weblogic服务器上安装了一个公共生成的SAN证书(在SAN条目中具有ext域和内部域)
外部用户将使用外部域url'https://xxx.external.com:443'。外部SSL流量将在Netscaler处终止,然后解密并重新加密回到端口7002上的内部weblogic服务器。 Netscaler还将请求中的HTTP主机标头更改为内部主机名,还将响应Http主机标头更改为外部主机名。
内部用户将只使用内部域URL,例如https://xxx.internal.local:7002
据我了解,证书提供者不再发布具有内部域的证书,因此这可能对您不起作用。但是我想解决这个问题。您可以使用内部域名生成内部CA证书。安装在weblogic服务器和netscaler上。购买带有外部域名的公共生成的证书,然后安装在Netscaler上。因此外部流量将使用“公共”证书来加密流量-内部流量将使用内部证书进行加密。
关于ssl - 您如何通过netscaler将SSL设置为与weblogic端到端,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34690731/