windows下使用keytool生成ssl自生成证书并在tomcat7中配置

来源:互联网 发布:中国象棋网络高手 编辑:程序博客网 时间:2024/05/18 00:34

一:生成ssl证书

首先需要生成一个ssl证书,直接打开cmd,默认已经配置jdk的环境变量,输入:

keytool -genkey -alias tomcat -keyalg RSA -keystore目录/tomcat.keystore

其中-genkey 指生成keystore ,-alias 指别名,-keyalg 指使用的加密算法,-keystore 后面跟上生成的keystore目录,回车后会出现以下提示:

输入密钥库口令:tomcat
再次输入新口令:tomcat
您的名字与姓氏是什么?
[Unknown]: xxx.xxx.xxx.xxx
您的组织单位名称是什么?
[Unknown]: ph
您的组织名称是什么?
[Unknown]: ph
您所在的城市或区域名称是什么?
[Unknown]: sh
您所在的省/市/自治区名称是什么?
[Unknown]: sh
该单位的双字母国家/地区代码是什么?
[Unknown]: cn
CN=tuhao, OU=tuhaojia, O=fnic, L=didu, ST=didu, C=cn是否正确?
[否]: y

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

这里大部分可以随意填写,有两点需要注意:

一点是密钥口令要记住,后面配置服务器的时候要用上。

一点是您的名字与姓氏是什么这一项要填写你的服务器ip地址,这点特别重要,填其他的都会有错误,有些说可以填写localhost,但是我自己填写localhost的时候也不能进入https://localhost:xxxx,可能是自己原因,这里建议大家cmd下输入ipconfig看下自己的ip地址填进去。

生成 .keystore后可以用

keytool -export -alias tomcat -filetomcat.cer -keystore目录/tomcat.keystore

生成一个cer证书,可以发送给客户端安装,安装在信任的证书中后再访问就不会出现“此网站的安全证书存在问题”的提示。

二:配置tomcat

进入tomcat的安装目录如apache-tomcat-7.0.75\conf,打开server.xml并找到<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"这一块进行修改。

首先去掉这一快的注释,然后修改为:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS"
               keystoreFile="目录/tomcat.keystore" keystorePass="tomcat"/>
要注意的几点用红色标出来了,port可以根据自己需要进行更改,默认为8443,clientAuth一定要为false,clientAuth指定是否需要验证客户端证书,如果该设置为“false”,则为单向SSL验证,如果clientAuth设置为“true”,表示强制双向SSL验证,这里就不多说了,可以自行查询两者区别。keystoreFile就是刚刚生成的 .keystore文件的目录,keystorePass为自己设置的密钥口令。

最后进入https:\\你的ip地址:8443,若出现tomcat主页面则配置成功,出现“此网站的安全证书存在问题”直接选择继续。