windows 中 tomcat https配置

tomcat https 配置

本文简单的记录下tomcat下https的配置。

在实际的系统中,很少会直接在tomcat上配置https对外提供服务,一般是通过在nginx上配置https接入,转发给内部tomcat服务器时转换为http。具体可参考http://www.cnblogs.com/zhjh256/p/6262620.html

配置tomcat的https,秘钥证书生成,直接使用java安装时自带的keytool即可。
建议把相关证书和key放在$TOMCAT_HOME/security下,便于统一管理。
建议命名规范为:
ca-key.pem一般来说是CA证书的rsa私钥文件
ca.pem可信Certificate Authority (CA)证书,通常内部通信的话,可以自签名,通过openssl req -new -x509生成。
client-cert.pem客户端公钥证书(一般HTTPS不用,浏览器会自动管理,但是自行开发的客户端就需要了,比如java rpc,jdbc客户端)*
client-key.pem客户端私钥(一般HTTPS不用,浏览器会自动管理*,但是自行开发的客户端就需要了,比如java rpc,jdbc客户端)
server-cert.pem服务器公钥证书,必须由拥有它的CA认证
server-key.pem服务器私钥

tomcat https 配置 操作步骤

1.1 配置tomcat 操作

D:\Java\jdk1.8.0_102\bin>keytool 密钥和证书管理工具
命令:

-certreq 生成证书请求
-changealias 更改条目的别名
-delete 删除条目
-exportcert 导出证书
-genkeypair 生成密钥对
-genseckey 生成密钥
-gencert 根据证书请求生成证书
-importcert 导入证书或证书链
-importpass 导入口令
-importkeystore 从其他密钥库导入一个或所有条目
-keypasswd 更改条目的密钥口令
-list 列出密钥库中的条目
-printcert 打印证书内容
-printcertreq 打印证书请求的内容
-printcrl 打印 CRL 文件的内容
-storepasswd 更改密钥库的存储口令

开始:

D:\Java\jdk1.8.0_102\bin>keytool -genkey -alias tomcat -keyalg RSA
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
[Unknown]: localhost    #这里的名称很重要,建议使用官网的地址
您的组织单位名称是什么?
[Unknown]: zjw
您的组织名称是什么?
[Unknown]: zjw
您所在的城市或区域名称是什么?
[Unknown]: zz
您所在的省/市/自治区名称是什么?
[Unknown]: zz
该单位的双字母国家/地区代码是什么?
[Unknown]: cn
CN=localhost, OU=zjw, O=zjw, L=zz, ST=zz, C=cn是否正确?
[否]: y

输入 <tomcat> 的密钥口令
(如果和密钥库口令相同, 按回车):

完毕后会在当前目录下,会在$HOME下(比如C:\Users\)产生一个.keystore文件,将它拷贝到tomcatbin目录下。

D:\apache-tomcat-7.0.69\bin>keytool -selfcert -alias tomcat -keystore .keystore
输入密钥库口令:
D:\apache-tomcat-7.0.69\bin>keytool -export -alias tomcat -keystore .keystore -storepass tomcat -rfc -file tomcat.cer
存储在文件 <tomcat.cer> 中的证书

此时会在D:\apache-tomcat-7.0.69\bin>下生成tomcat.cer证书文件。将该文件发给使用者,让他们安装该证书,并将证书安装在“受信任的根证书颁发机构”区域中。

1.2 配置tomcat

打开$CATALINA_BASE/conf/server.xml 找到SSL HTTP/1.1 Connector那一块,取消注释并将它改成:

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"

maxThreads="150" scheme="https" secure="true"
keystoreFile="bin/.keystore" keystorePass="tomcat" 
clientAuth="false" sslProtocol="TLS" />

修改windows机器的host文件,增加一行:

127.0.0.1 localhsot

接下来重启tomcat,用https://localhost:8443/访问网站验证一下就行了。

posted @ 2018-01-12 18:02  游园拾忆  阅读(80)  评论(0编辑  收藏  举报