在Weblogic服务器上安装SSL证书
Weblogic基于JAVAEE架构的中间件,Weblogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。
目前Weblogic 10.3.1及其以上的版本支持所有主流品牌的SSL证书,10.3.1之前的版本不支持各品牌SSL证书。
本章节介绍将证书安装到Weblogic服务器,您在安装证书时可以进行参考。证书安装好后,您的Web服务器才能支持SSL通信,实现通信安全。
由于服务器系统版本或服务器环境配置不同,在安装SSL证书过程中使用的命令或修改的配置文件信息可能会略有不同,云证书管理服务提供的安装证书示例,仅供参考,请以您的实际情况为准。
前提条件
- 证书已签发且“证书状态”为“已签发”。
- 已下载SSL证书,具体操作请参见下载证书。
- 已安装JDK。
Weblogic安装后自带JDK安装。如果未安装,则请安装Java SE Development Kit (JDK)。
约束条件
- 证书安装前,务必在安装SSL证书的服务器上开启“443”端口,同时在安全组增加“443”端口,避免安装后仍然无法启用HTTPS。
- 如果一个域名有多个服务器,则每一个服务器上都要部署。
- 待安装证书的服务器上需要运行的域名,必须与证书的域名一一对应,即购买的是哪个域名的证书,则用于哪个域名。否则安装部署后,浏览器将提示不安全。
步骤一:获取文件
安装证书前,需要获取证书文件和密码文件,请根据申请证书时选择的“证书请求文件”生成方式来选择操作步骤:
具体操作如下:
- 系统生成CSR
- 在本地解压已下载的证书文件。
- 从“证书ID_证书绑定的域名_Tomcat”文件夹内获得证书文件“证书ID_证书绑定的域名_server.jks”和密码文件“证书ID_证书绑定的域名_keystorePass.txt”。
- 自己生成CSR
- 解压已下载的证书压缩包,获得“证书ID_证书绑定的域名_server.pem”文件。
“证书ID_证书绑定的域名_server.pem”文件包括两段证书代码“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”,分别为服务器证书和中级CA证书。
- 使用OpenSSL工具,将pem格式证书转换为PFX格式证书,得到“server.pfx”文件。
- “pem”文件和生成CSR时的私钥“server.key”放在OpenSSL工具安装目录的bin目录下。
- 在OpenSSL工具安装目录的bin目录下,执行以下命令将pem格式证书转换为PFX格式证书,按“Enter”。
openssl pkcs12 -export -out server.pfx -inkey server.key -in 证书ID_证书绑定的域名_server.pem
回显信息如下:
Enter Export Password:
- 输入PFX证书密码,按“Enter”。
此处输入的密码为用户自定义密码,请根据自己的需求进行设置并输入密码。
回显信息如下:
Verifying - Enter Export Password:
请牢记此处输入的PFX证书密码。后续设置JKS密码需要与此处设置的PFX密码保持一致,否则可能会导致Weblogic启动失败。
为提高用户密码安全性,建议按以下复杂度要求设置密码:
- 密码长度为8~32个字符。
- 至少需要包含大写字母、小写字母、数字、空格、特殊字符~`!@#$%^&*()_+|{}:"<>?-=\[];',./中的3种类型字符。
- 再次输入PFX证书密码,按“Enter”。
- 使用Keytool工具,将PFX格式证书文件转换成JKS格式,得到“server.jks”文件。
- 将2中生成的“server.pfx”文件复制到“%JAVA_HOME%/jdk/bin”目录下。
- 在“%JAVA_HOME%/jdk/bin”目录下,执行以下命令,按“Enter”。
keytool -importkeystore -srckeystore server.pfx -destkeystore server.jks -srcstoretype PKCS12 -deststoretype JKS
回显信息如下:
输入目标密钥库口令:
- 输入JKS证书密码,按“Enter”。
请将JKS密码设置为与PFX证书密码相同的密码,否则可能会导致Weblogic启动失败。
回显信息如下:
再次输入新口令:
- 再次输入JKS证书密码,按“Enter”。
输入源密钥库口令:
- 输入2.c中设置PFX证书密码,按“Enter”。
回显类似如下信息时,则表示转换成功,已在OpenSSL工具安装目录下成功生成“server.jks”文件。
已成功导入别名1的条目。 已完成导入命令:1个条目成功导入,0个条目失败或取消
- 在“%JAVA_HOME%/jdk/bin”目录下新建一个“keystorePass.txt”文件,将JKS的密码保存在该文件中。
- 将转换后的证书文件“server.jks”和新建的密码文件“keystorePass.txt”放在同一目录下。
- 解压已下载的证书压缩包,获得“证书ID_证书绑定的域名_server.pem”文件。
步骤二:配置Weblogic
- 登录Weblogic服务器管理控制台。
- 单击页面左上方“Lock & Edit”,解锁配置。
- 在“Domain Configurations”中,单击“Servers”。
图2 服务器
- 在服务器列表中,选择您需要配置服务器证书的Server,进入服务器的设置页面。
图3 目标服务器
- 修改HTTPS端口。
在服务器的配置页面,选择“General”页签,配置是否启用HTTP和HTTPS,以及访问端口号。
请勾选“Listen SSL Port Enabled”,并修改端口号为“443”。
图4 端口
- 配置认证方式和密钥。
- 在服务器的配置页面,选择“Keystores”页签,配置认证方式。
图5 认证方式
- 服务器身份认证请选择“Custom identity and Java Standard Trust”。
- 双向认证请选择“Custom Identity and Custom Trust”。
- 在“Identity”区域中,配置密钥。
配置密钥库文件server.jks所保存的服务器上的路径,并填写密钥库文件密码。图6 密钥
- Custom Identity Keystore:请填写jks文件保存路径。示例:C:\bea\server.jks
- Custom Identity Keystore Type:文件格式请填写“jks”。
- Custom Identity Keystore Passphrase:请填在证书密码,即“keystorePass.txt”中的密码。
- Confirm Custom Identity Keystore Passphrase:请再次填写证书密码。
- 在单向认证中,需要配置JRE默认信任库文件cacerts。
- 在服务器的配置页面,选择“Keystores”页签,配置认证方式。
- 配置服务器证书私钥别名。
- 设置完成后,单击“Active Changes”,保存所有修改。
图9 保存配置
- (可选)如果系统提示需要重启Weblogic,则需要重启后才能使配置生效。如图10所示,则无需重启。
步骤三:效果验证
部署成功后,可在浏览器的地址栏中输入“https://域名”,按“Enter”。
如果浏览器地址栏显示安全锁标识,则说明证书安装成功。
- 如果网站仍然出现不安全提示,请参见为什么部署了SSL证书后,网站仍然出现不安全提示?。
- 如果通过域名访问网站时,无法打开网站,请参见为什么部署了SSL证书后,通过域名访问网站时,无法打开网站?进行处理。