我所在的公司有一款非常老旧的应用程序,运行在 Weblogic 10 服务器上。应用程序供应商已不复存在,但应用程序本身仍在某些业务流程中使用。一个月前,SSL 证书终于过期了。无法重新颁发或以某种方式替换它,因为使用相同的证书来签署许可证密钥。
不过,我想尝试恢复对管理应用程序(自定义应用程序,而不是管理控制台)的访问。我需要配置 Weblogic 以忽略过期的证书(最佳选择)或完全禁用 SSL。后者更复杂,因为该服务器上有多个应用程序,而且端口 80 被重定向到 443。
我在 Google 上搜索了很多,但只发现 Oracle 只允许忽略主机名验证。我试过了,但显然没用。我只用过 Tomcat,所以有人能解释一下如何禁用证书验证吗,如果可能的话。
错误如下所示:
<Alert> <Security> <BEA-090154> <Identity certificate has expired
<Error> <WebLogicServer> <BEA-000297> <Inconsistent security configuration, weblogic.management.configuration.ConfigurationException: Identity certificate has expired
问题解决了:
我禁用了 SSL(在 中confix.xml
)并配置了一些 iptables 重定向以使用 HTTP。看来 WLS 无法忽略过期的证书,因为 Oracle 等供应商“总是更了解情况”和其他安全炒作。