您的位置:首页 > 理论基础 > 计算机网络

Tomcat服务器配置https协议(Tomcat HTTPS/SSL 配置)

2016-03-26 16:29 706 查看
通常商用服务器使用https协议需要申请SSL证书,证书都是收费的,价格有贵的有便宜的。它们的区别是发行证书的机构不同,贵的证书机构更权威,证书被浏览器否决的几率更小。

非商业版本可以通过keytool来生成。

用keytool工具生成证书与配置

1、相关工具说明

此处使用1.7.0_79版本,如图所示:



切换到jdk bin目录下面,如图:



证书密钥生成

1、创建证书

keytool -genkey -alias [your_alias_name] -keyalg RSA -keystore [keystorePath]
keytool -genkey -alias alibaba -keyalg RSA -keystore F:/keys/alibabakey


[your_alias_name] 可以是网站名,比如:alibaba

<your_keystore_filename> 生成的证书所在目录及名称,此处用 F:/keys/alibabakey

输入以上命令以后会提示让输入域名(必填)相关信息。此处可模拟一个,如alibaba.com。

密钥库口令随便输入,只有能记得住就行。此处使用:123456



导出证书

keytool -export -file f:/keys/alibaba.crt -alias alibaba -keystore F:/keys/alibabakey




为客户端的JVM导入证书

把证书导入到jvm,这里输入的keystore密码为changeit

keytool -import -keystore D:\Application\Java\jre7\lib\security\cacerts -file f:/keys/alibaba.crt -alias alibaba




tomcat配置

服务器版本说明

tomcat使用apache-tomcat-7.0.67版本

到tomcat安装目录D:\Application\apache-tomcat-7.0.67\conf找到server.xml文件。对此文件进行编辑。

找到:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"/>


  未修改的情况下,此节点是被注释的。请放开注释。并在此节点中增加属性配置:keystoreFile="F:/keys/alibabakey" keystorePass="123456" 此处的两个值是上面生成的。和设置的密钥库口令。此处的keystoreFile和keystorePass要区分大小写。写错的话启动tomcat的时候会报错。

设置完成后为:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="F:/keys/alibabakey" keystorePass="123456"/>


最后一步,找到C:\Windows\System32\drivers\etc\hosts文件,编辑此文件,在最后增加一行

127.0.0.1 alibaba.com

因为生成密钥的时候输入的域名是这个。

启动tomcat



访问查看效果

在地址栏输入:https//alibaba.com:8443/



商用证书申请与相关配置

请参照:详解 Nginx + Tomcat HTTPS/SSL 配置
http://my.oschina.net/zhlmmc/blog/42125?fromerr=Q8wKtQvz
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: