58ssl.cn_SSL之家
当前位置: 首页 > SSL教程 > Tomcat SSL证书安装指南

Tomcat SSL证书安装指南

关键词:Tomcat SSL证书安装   时间:2017-11-21      来源:SSL之家    点击:

Tomcat SSL证书安装指南:在申请数字证书之前,您必须先生成证书私钥和证书请求文件 (CSR, Certificate Signing Request), CSR是您的公钥证书原始文件,包含了您的服务器信息和您的单位信息,需要提交给CA认证中心。
请妥善保管和备份您的私钥。

Tomcat SSL证书安装

以上是申请证书流程图。完成整个流程最快三天,慢则七天,因为发证商需要审核申请者提交的资料。

第一步提交CSR
第二步 资料提交到CA
第三步 发送验证邮件到管理员邮箱
CA获得资料后,将发送一封确认信到管理员邮箱*,信中将包含一个链接。每一个订单,都有一个唯一的PIN以做验证用。

第四步 邮件验证
点击确认信中的链接,可以访问到验证网站,在验证网站,可以看到该订单的申请资料,然后点击
"I Approve"完成邮件验证。

第五步 颁发证书
CA会将证书通过邮件方式发送到申请人自己的邮箱。

*什么是管理员邮箱?
认证系统为了确认您对所申请的SSL服务器域名拥有管理权,会发电子邮件到指定的管理员邮箱中。

例如:您准备申请的SSL证书服务器域名为:www.58ssl.cn,在递交申请时,可供选择的管理员邮箱如下:

admin@58ssl.cn admin@www.58ssl.cn administrator@58ssl.cn administrator@www.58ssl.cn hostmaster@58ssl.cn hostmaster@www.58ssl.cn root@58ssl.cn root@www.58ssl.cn webmaster@58ssl.cn webmaster@www.58ssl.cn postmaster@www.58ssl.cn postmaster@www.58ssl.cnSSL证书是数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。SSL 证书就是遵守SSL协议,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。
此指南将分成4个主题:
  1. 生成证书请求文件 (CSR)
  2. 安装服务器证书
  3. 优化加密方式 (weak cipher)
  4. 设置http跳转到https
第一步:生成证书请求文件 (CSR)

  1. 进入Java_JRE\bin目录,如
    C:\PROGRA~1\Java\jre1.6.0_10\bin
    运行如下命令:
keytool -genkey -alias tomcat -keyalg RSA -keysize 2048 -sigalg SHA256withRSA -keystorec:\server.jks
输入keystore密码:
再次输入新密码:
输入keystore密码,务必牢记此密码,后面在server.xml的配置中需要使用到。
您的名字与姓氏是什么?
[Unknown]:www.abc.com
您的组织单位名称是什么?
[Unknown]:IT Dept.
您的组织名称是什么?
[Unknown]:ABC Technologies, Inc.
您所在的城市或区域名称是什么?
[Unknown]:Shanghai
您所在的州或省份名称是什么?
[Unknown]:Shanghai
该单位的两字母国家代码是什么
[Unknown]:CN
字段 说明 示例 您的名字与姓氏是什么? 申请证书的域名 www.abc.com 您的组织单位名称是什么? 部门名称 IT Dept. 您的组织名称是什么? 企业名称 ABC Technologies, Inc. 您所在的城市或区域名称是什么? 所在城市 Shanghai 您所在的州或省份名称是什么? 所在省份 Shanghai 该单位的两字母国家代码是什么? ISO国家代码(两位字符) CN CN=www.abc.com, OU=IT Dept, O=ABC Technologies, Inc., L=Shanghai, ST=Shanghai, C=CN正确吗?
[否]:Y
请核对信息,如果确认无误后请直接输入Y并回车
输入<mykey>的主密码
(如果和keystore密码相同,按回车):
2. 不需要另外设置独立密码,这里回车即可,完成后在C盘根目录下就会生成一个server.jks的JAVA证书池文件,在证书办法并导入前请妥善保存此文件。
keytool -certreq -alias tomcat -file c:\certreq.csr -keystore c:\server.jks
输入keystore密码:
输入密码后回车,这时会生成一个certreq.csr的文件,此文件为证书请求文件(CSR)。

3. 验证您的证书签章要求
浏览 https://cryptoreport.websecurity.symantec.com/checker/views/csrCheck.jsp
请确保 Signature algorithm:SHA256
Tomcat SSL证书安装
请保管好key私钥文件,提交CSR给客服等待证书签发。

第二步:安装服务器证书

证书是审核完毕后您将会收到:
  1. 服务器证书代码
  2. 服务器中级CA证书

举例:服务器证书代码 档名为domain.crt、中级CA证书代码档名为ca_intermediate.crt
为保障保障服务器证书在客户端的兼容性,服务器证书代码 与 中级CA证书代码需要合并,以建立安全链 (security chain)。

domain.crt
Tomcat SSL证书安装

ca_intermediate.crt
Tomcat SSL证书安装
合并domain.crt、ca_intermediate.crt成上下段。域名证书在上,中级证书在下,中间不空行
存为domain.crt

Tomcat SSL证书安装

附录:如何辨识中级证书
每张证书都会显示发行者,如下:

Tomcat SSL证书安装

以上例子有 Symantec Class 3 EV SSL CA – G3, GeoTrust SSL CA – G3, RapidSSL SHA256 – CA。这就是各个证书对应的中级证书。

Tomcat SSL证书安装

所谓 “证书安全链” 就是结合秘钥,域名证书,和中级证书,串连起来的加密链,确保加密数据的安全。

导入证书
keytool -import -alias tomcat –keystore server.jks -trustcacerts –file domain.crt
注意: -alias 这个参数值的别名必须和第一步生成CSR时下的别名一样。

首先找到安装 Tomcat 目录下该文件“Server.xml”,一般默认路径都是在 conf 文件夹 中。然后用文本编辑器打开该文件,接着找到如下,黄色部分为您需要修改的部分。
<Connector port=”443″ maxHttpHeaderSize=”8192″ maxThreads=”150″ minSpareThreads=”25″ maxSpareThreads=”75″ enableLookups=”false” disableUploadTimeout=”true” acceptCount=”100″ scheme=”https” secure=”true” SSLEnabled=”true” clientAuth=”false” sslProtocol=”TLS” keyAlias=”tomcat” keystoreFile=”your_keystore_file” keystorePass=”your_keystore_password” />

如果没有APR的Tomcat,按下面例子更新Server.xml文件配置
<Connector port=”443″ maxHttpHeaderSize=”8192″ maxThreads=”150″ minSpareThreads=”25″ maxSpareThreads=”75″ enableLookups=”false” disableUploadTimeout=”true” acceptCount=”100″ scheme=”https” secure=”true” clientAuth=”false” sslProtocol=”TLS” keystoreFile=”your_keystore_file” keyPass=”your_keystore_password” keystoreType=”PKCS12″/>


注意:不同tomcat版本,修改server.xml的方式不同,请参考tomcat说明:
tomcat 8.0- http://tomcat.apache.org/tomcat-8.0-doc/ssl-howto.html
tomcat 7.0 - http://tomcat.apache.org/tomcat-7.0-doc/ssl-howto.html
tomcat 6.0 - http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html
tomcat 5.5 - http://tomcat.apache.org/tomcat-5.5-doc/ssl-howto.html
tomcat 5.0 - http://tomcat.apache.org/tomcat-5.0-doc/ssl-howto.html
tomcat 4.1 - http://tomcat.apache.org/tomcat-4.1-doc/ssl-howto.html

第三步:优化加密方式 (weak cipher)
a适用于Tomcat 5,6
Tomcat 目录下该文件“Server.xml”加入青色的字

<Connector port="443" maxHttpHeaderSize="8192" address="192.168.1.1"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true" clientAuth="false"
keystoreFile="SomeDir/SomeFile.key" keystorePass="Poodle"
truststoreFile="SomeDir/SomeFile.truststore" truststorePass="HomeRun"
sslEnabledProtocol="TLSv1, TLSv1.1, TLSv1.2"
SSL_RSA_WITH_RC4_128_MD5,
SSL_RSA_WITH_RC4_128_SHA,
TLS_RSA_WITH_AES_128_CBC_SHA,
TLS_DHE_RSA_WITH_AES_128_CBC_SHA,
TLS_DHE_DSS_WITH_AES_128_CBC_SHA,
SSL_RSA_WITH_3DES_EDE_CBC_SHA,
SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA,
SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA,
SSL_RSA_WITH_DES_CBC_SHA,
SSL_DHE_RSA_WITH_DES_CBC_SHA,
SSL_DHE_DSS_WITH_DES_CBC_SHA,
SSL_RSA_EXPORT_WITH_RC4_40_MD5,
SSL_RSA_EXPORT_WITH_DES40_CBC_SHA,
SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA,
SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA,
"/>

b适用于Tomcat 7,8
Tomcat 目录下该文件“Server.xml”加入青色的字

<Connector port="443" maxHttpHeaderSize="8192" address="192.168.1.1"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true" clientAuth="false"
keystoreFile="SomeDir/SomeFile.key" keystorePass="Poodle"
truststoreFile="SomeDir/SomeFile.truststore" truststorePass="HomeRun"
sslEnabledProtocol="TLSv1, TLSv1.1, TLSv1.2"
ciphers="TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,
TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384,
TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384,
TLS_DHE_DSS_WITH_AES_256_CBC_SHA256,
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA,
TLS_ECDH_RSA_WITH_AES_256_CBC_SHA,
TLS_DHE_DSS_WITH_AES_256_CBC_SHA,
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256,
TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256,
TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA,
TLS_ECDH_RSA_WITH_AES_128_CBC_SHA,
TLS_DHE_DSS_WITH_AES_128_CBC_SHA,
TLS_ECDHE_ECDSA_WITH_RC4_128_SHA,
TLS_ECDH_ECDSA_WITH_RC4_128_SHA,
TLS_ECDH_RSA_WITH_RC4_128_SHA,
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,
TLS_RSA_WITH_AES_256_GCM_SHA384,
TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384,
TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384,
TLS_DHE_DSS_WITH_AES_256_GCM_SHA384,
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
TLS_RSA_WITH_AES_128_GCM_SHA256,
TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256,
TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256,
TLS_DHE_DSS_WITH_AES_128_GCM_SHA256,
TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA,
TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA,
TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA,
TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA,
TLS_EMPTY_RENEGOTIATION_INFO_SCSVF
"/>


第四步:设置http跳转到https

打开$CATALINA_HOME/conf/web.xml,或者在项目文件的web.xml最后增加下面内容:
<login-config>
<!-- Authorization setting for SSL -->
<auth-method>CLIENT-CERT</auth-method>
<realm-name>Client Cert Users-only Area</realm-name>
</login-config>
<security-constraint>
<!-- Authorization setting for SSL -->
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>


上述配置完成后,重启TOMCAT后即可以使用SSL。IE地址栏中可以直接输入地址测试。

本文链接:https://www.58ssl.cn/ssl_jiaocheng/3698.html TAG:"Tomcat SSL证书安装"转载请注明出处。

百度新闻 百度地图 谷歌地图
Copyright© 2010-2020 SSL之家