WAS环境服务器证书无效和证书过期怎么办?
服务器证书无效常见的是证书过期导致网站管理控制台无法登陆,或者集群环境中能够登录管理控制台,但无法同步或者管理各个结点的情况。出现这个问题不用急,本文以实际的解决方案帮助大家解决这个问题。
查看后台SystemOut.log日志,有SSLHandshakeException:certificates expire的错误记录。此类问题发生的原因,是由于启用了管理安全性之后,WAS环境中的SSL通讯会涉及到安全证书(certificate),而安全证书是有一定有效期的。安全证书超过有效期之后会失效(expire),从而发生管理的问题。
特别是在集群环境下,部署管理器(dmgr)与各个结点(node)之间的安全通讯,在dmgr和node的配置中都保存有相应的证书,这些证书由于各种原因发生不一致时,也会出现SSLHandshakeException的问题,从而证书过期/证书自动更新导致Dmgr无法正常管理或者同步node。(可能你想知道:证书无效跟服务器环境搭建有关系吗?)
本文根据实践经验,介绍了几种简单易行的解决方案尝试解决此类问题,这些方案仅适用于使用WAS默认证书配置对证书没有特殊要求的WAS用户。针对Standalone环境,如果发生证书过期问题:
步骤1:请先备份WAS配置(backupConfig),保留原有证书备份(profile_root目录下的*.p12文件)。
步骤2:给WAS打补丁,推荐最新或者次新补丁(原因参见参考资料1)。如果生产环境比较敏感,此步也可略去。
步骤3:在WAS进程停止的状态下,直接删除掉profile_root目录下的*.p12文件。
步骤4:重启WAS,这时WAS会自动重新产生新的p12文件。测试管理、运行是否正常,最后不要忘记从命令行停止WAS,命令行可能会提示是否接受新的证书,选择接受。再次重启WAS,确认环境是否一切正常。