Linux环境 Tomcat使用https协议

前言

如果希望 Tomcat 支持 Https,主要的工作是配置 SSL 协议,
1.生成安全证书,
2.配置tomcat


提示:以下是本篇文章正文内容,下面可供参考

一、生成安全证书

1.java环境:因为SUN公司提供了制作证书的工具keytool//bin目录下
2.创建证书的命令:./keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore /opt/tomcat.keystore

keytool -genkey:自动使用默认的算法生成公钥和私钥

-alias[名称]:给证书取个别名

-keyalg:制定密钥的算法,如果需要制定密钥的长度,可以再加上keysize
参数,密钥长度默认为1024位,使用DSA算法时,密钥长度必须在5121024
之间,并且是64的整数倍

-keystore:参数可以指定密钥库的名称。密钥库其实是存放迷药和证书文件,
密钥库对应的文件如果不存在会自动创建。//非目录 新增加文件tomcat.keystore

-validity:证书的有效日期,默认是90-keypass changeit:不添加证书密码

-storepass changeit:不添加存储证书的密码

在这里插入图片描述
笔者输入密码(怕忘了):tomcat 其它的根据具体情况输入
在这里插入图片描述
在这里插入图片描述
在opt目录下可以生成tomcat.keystore文件。

二、配置tomcat

tomcat设置https端口时,8443和443区别:

  1. 8443端口在访问时需要加端口号,相当于http的8080,不可通过域名直接访问,需要加上端口号;https://yuming.com:8443。
  2. 443端口在访问时不需要加端口号,相当于http的80,可通过域名直接访问;例:https://yuming.com。

定位到tomcat服务器的安装目录, 找到conf下的server.xml文件
去掉注释,修改port="8443"端口为:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" 
               keystoreFile="/opt/tomcat.keystore"  
               keystorePass="tomcat"/>
               
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" secretRequired="" />

重新启动:
在这里插入图片描述


Linux中查看Tomcat日志输出

①进入到tomcat目录下:

[root@iZ94byqpectZ ~]# cd /usr/local/java/tomcat

②开启服务器:

[root@iZ94byqpectZ tomcat]# ./bin/startup.sh

③开启日志输出:

[root@iZ94byqpectZ tomcat]# tail -n 200 -f logs/catalina.out

bug:
Caused by: java.lang.IllegalArgumentException: The AJP Connector is configured with secretRequired=“true” but the secret attribute is either null or “”. This combination is not valid.
在这里插入图片描述
答: 8.5版本的tomcat有个属性 secretRequired需要给设置值:

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" secretRequired="" />

猜你喜欢

转载自blog.csdn.net/qq_35911309/article/details/109064048
今日推荐