在Resin服务器上安装SSL证书
发布时间:2022/01/05
本章节介绍如何将下载的证书安装到Resin服务器上。安装好证书后,您的Web服务器将能支持SSL通信,从而Web服务器的通信。
如果证书安装过程中遇到问题,提供SSL证书配置优化服务,可实现云上全品牌SSL证书配置,工程师一对一服务。请直接单击一对一咨询进行购买,购买服务后,联系工程师进行处理。
前提条件
- “证书状态”为 “已签发”。
- 已下载SSL证书,具体操作请参见下载证书。
约束条件
- 证书安装前,务必在安装SSL证书的服务器上开启 “443”端口,同时在组增加 “443”端口,避免安装后仍然无法启用HTTPS。
- 如果一个域名有多个服务器,则每一个服务器上都要部署。
- 待安装证书的服务器上需要运行的域名,必须与证书的域名一一对应,即购买的是哪个域名的证书,则用于哪个域名。否则安装部署后,浏览器将提示不。
操作步骤
在Resin服务器上安装SSL证书的流程如下所示:
①获取文件 → ②配置Resin → ③效果验证
步骤一:获取文件
安装证书前,需要获取证书文件和密码文件,请根据申请证书时选择的 “证书请求文件”生成方式来选择操作步骤:
- 如果申请证书时, “证书请求文件”选择 “系统生成CSR”。
- 如果申请证书时, “证书请求文件”选择 “自己生成CSR”。
具体操作如下:
- 系统生成CSR
- 在本地解压已下载的证书文件。 下载的文件包含了 “Apache”、 “IIS”、 “Nginx”、 “Tomcat”4个文件夹和1个 “domain.csr”文件,如图1所示。图1本地解压SSL证书
- 从 “ 证书ID_ 证书绑定的域名_Tomcat”文件夹内获得证书文件 “ 证书ID_ 证书绑定的域名_server.jks”和密码文件 “ 证书ID_ 证书绑定的域名_keystorePass.txt”。 须知:
密码文件 “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密码保持一致,否则可能会导致Resin启动失败。
为提高用户密码性,建议按以下复杂度要求设置密码:
- 密码长度为8~32个字符。
- 少需要包含大写字母、小写字母、数字、空格、特殊字符~`!@#$%^&*()_+|{}:"<>?-=\[];',./中的3种类型字符。
- 再次输入PFX证书密码,按“Enter”。
当系统没有回显任何错误信息,表示已在OpenSSL工具安装目录下成功生成 “server.pfx”文件。
- 使用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证书密码相同的密码,否则可能会导致Resin启动失败。
回显信息如下:
再次输入新口令:
- 再次输入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”文件。
步骤二:配置Resin
- (可选)安装Resin。 如果已安装,则请跳过该步骤。
- 登录Resin官网并根据您的系统下载不同的应用程序包。
本步骤以下载 Windows版本的 Resin-4.0.38版本为例进行说明。
- 解压下载的Resin包。
- 进入Resin-4.0.38根目录并找到resin.exe文件。
- 运行resin.exe文件,运行期间将出现如图2所示的命令提示符窗口。 图2提示窗口
- 运行完成后,启动浏览器,在Web地址栏中输入Resin默认地址 “http://127.0.0.1:8080”,并按 “Enter”。
当界面显示如图3所示时,则表示安装成功。
图3登录Resin
- 登录Resin官网并根据您的系统下载不同的应用程序包。
- 修改配置文件。
- 在Resin安装目录下的 “Resin.properties”配置文件(由于Resin版本的不同,配置文件也可能为 “resin.xml”文件)中,找到如下参数:
# specifies the --server in the config file # home_server : app-0 # Set HTTP and HTTPS bind address # http_address : * # Set HTTP and HTTPS ports. # Use overrides for individual server control, for example: app-0.http : 8081 app.http : 8080 # app.https : 8443 web.http : 8080 # web.https : 8443
- 将 “app.https”和 “web.https”前的注释符 “#”去掉,并将 “8443端”口修改为 “443”。修改后,如下所示: “app.https”、 “web.https”:指定服务器要使用的端口号,建议配置为 “443”。
# specifies the --server in the config file # home_server : app-0 # Set HTTP and HTTPS bind address # http_address : * # Set HTTP and HTTPS ports. # Use overrides for individual server control, for example: app-0.http : 8081 app.http : 8080 app.https : 443 web.http : 8080 web.https : 443
- 找到如下参数,并将 “jsse_keystore_tye”、 “jsse_keystore_file”和 “jsse_keystore_password”三行前的注释符 “#”去掉。
# JSSE certificate configuration # Keys are typically stored in the resin configuration directory. jsse_keystore_tye : jks jsse_keystore_file : cert/server.jksjsse_keystore_password : 证书密码
- 修改证书相关配置参数,具体配置请参见 表1。
# JSSE certificate configuration # Keys are typically stored in the resin configuration directory. jsse_keystore_tye : jks jsse_keystore_file :cert/server.jks jsse_keystore_password :证书密码
表1参数说明 参数
参数说明
jsse_keystore_tye
设定Keystore文件的类型,一般都设为 jks
jsse_keystore_file
“server.jks”文件存放路径,路径和相对路径均可。示例:cert/server.jks
jsse_keystore_password
“server.jks”的密码。填写 “keystorePass.txt”文件内的密码。
须知:如果密码中包含 “&”,请将其替换成 “&”,以免配置不成功。
示例:
如果keystorePass="Ix6 &APWgcHf72DMu",则修改为keystorePass="Ix6 &APWgcHf72DMu"。
- 修改完成后保存配置文件。
- 在Resin安装目录下的 “Resin.properties”配置文件(由于Resin版本的不同,配置文件也可能为 “resin.xml”文件)中,找到如下参数:
- 重启Resin。
效果验证
部署成功后,可在浏览器的地址栏中输入 “https://域名”,按 “Enter”。
如果浏览器地址栏显示锁标识,则说明证书安装成功。