历史版本13 :Tomcat配置SSL证书实现HTTPS访问 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 创建证书编辑

证书是单点登录认证系统中很重要的一把钥匙,客户端与服务器的交互安全靠的就是证书;本教程由于是演示所以就自己用JDK自带的keytool工具生成证书;如果以后真正在产品环境中使用肯定要去证书提供商去购买,证书认证一般都是由VeriSign、globalsign等国际公认的CA机构认证,下面介绍一种利用自带工具生成SSL证书及在tomcat服务器中配置的方法。
首先,安装JRE
单击开始 -> 运行输入cmd,右键以管理员身份运行,单击“确定”启动命令提示符窗口。
切换到jre安装所在的磁盘,如C:\Program Files\Java\jre1.8.0_111\bin
输入
cd C:\Program Files\Java\jre1.8.0_111\bin进入jre的bin目录下。
执行命令
keytool -genkey -alias tomcat-server -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore
创建证书。如下图:

222

注:您的名字与姓氏,这里不能输入IP地址,只能输入域名
注:您的名字与姓氏,我输入的是susie,其实这个域名是不存在的,但是这里为了演示所以虚拟了这个域名,所以需要在hosts文件里映射一个虚拟域名,设置方式如下

222

这样在访问susie的时候其实是访问的127.0.0.1也就是本机

2. 导出证书编辑

执行命令
keytool -export -alias tomcat-server -storepass changeit -file server.cer -keystore server.keystore
将证书导出。

222

3. 将证书导入到JDK证书信任库编辑

执行命令
keytool -import -trustcacerts -alias server -file server.cer -keystore cacerts -storepass changeit
系统询问是否信任此证书,回答“y”。

222

注:将新生成server.keystore,server.cer,cacerts(在D:\java\jre1.8.0_111\bin目录下)复制到Tomcat安装目录下(如E:/apache/tomcat/)
222

4. 应用证书到Web服务器编辑

配置server.xml文件,以管理员身份运行文字编辑器,打开%TOMCAT_HOME%\conf\server.xml。查找SSL配置添加你的证书的地址keystoreFile(注:地址可以填绝对路径或者在tomcat中的相对路径)以及密码keystorePass,如下:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" keystoreFile="E:/apache/Tomcat 8.5/server.keystore" keystorePass="changeit"/>

222



重启Tomcat服务,打开https://susie:8443/,如下图:
222

如果看到上面的界面,说明Tomcat的SSL配置成功。
注:如果配置完后启动不了tomcat服务,则说明第4步配置不正确,仔细检查是否按上述步骤配置。