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

Tomcat配置https

2016-07-19 22:47 591 查看
通过JDK自带的keytool工具能够生成属于自己的证书。

在window环境下:

以管理员的身份运行cmd.exe,切换到Tomcat的安装目录下(如G:\Tomcat 8.0),执行命令

keytool -genkey -alias casserver -keypass demosso -keyalg RSA -keystore casserver.keystore -validity 365


执行后可以看到目录下生成了casserver.keystore文件,

-alias 指定别名为casserver;

-keyalg指定RSA算法;

-keypass 指定私钥密码;

-keystore 指定密钥文件名称为casserver.keystore;

-validity 指定证书有效期为365天。

继续执行命令:

keytool -export -alias casserver -storepass demosso -file casserver.cer -keystore casserver.keystore


执行后可以看到目录下生成了casserver.cer文件,

-alias 指定别名为casserver;

-storepass 指定私钥为demosso;

-file 指定导出证书的文件名为casserver.cer;

-keystore 指定之前生成的密钥文件的文件名。

继续执行命令:

keytool -import -trustcacerts -alias casserver-storepass demosso -file casserver.cer –keystore cacerts


执行后可以看到目录下生成了cacerts文件。

接下来打开Tomcat目录下的conf文件,里面有一个server.xml文件,编辑它,找到被注释的这一段:

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


修改为:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
keystoreFile="/casserver.keystore"
keystorePass="demosso"
truststoreFile="/cacerts"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />


重新启动Tomcat,打开https://localhost:8443/

看到:



就代表配置成功了,点击继续浏览此网站:



看到Tomcat的主页。

为什么会提示证书存在问题呢?因为Tomcat使用的证书是我们自己用keytool工具生成的,对于浏览器来说,我们自己生成的证书是不被信任的,在实际生产中,我们要向被信任的组织申请证书,使用那些被信任组织的证书就不会出现这个提示了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: