tomcat8.0配置https访问

    技术2025-10-19  21

    前景:项目做安全策略需要配置远程https模式登录,先前采用nginx配置方式,踩了无数坑最后放弃了T_T,后来采用修改tomcat配置方法完成,防止时间长了自己忘记,简单的写了这个笔记。 

    1、在Linux下生成证书

    我这里将证书放在了当前目录下,如果要指定路径,则配置/path/tomcat.teystore即可(path表示你的具体路径,如:/home/test/tomcat.teystore)

    在centos上执行如下命令: keytool -genkey -v -alias tomcat -keyalg RSA -keystore tomcat.keystore -validity 36500 Enter keystore password: (这里输入密码,后面会用到) Re-enter new password: What is your first and last name? [Unknown]: localhost(这里写域名,不是自己的名字) What is the name of your organizational unit? [Unknown]: xxxxx (组织) What is the name of your organization? [Unknown]: xxxxx (组织) What is the name of your City or Locality? [Unknown]: chengdu What is the name of your State or Province? [Unknown]: sichuan What is the two-letter country code for this unit? [Unknown]: CN Is CN=localhost, OU=xxxxx, O=xxxxx, L=chengdu, ST=sichuan, C=CN correct? [no]: y

     2、修改tomcat配置文件

           找到tomcat下的conf/server.xml文件中的如下部分,去掉注释,并添加证书路径和密码(步骤1中输入的密码)

            <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"                 maxThreads="150" scheme="https" secure="true"                 keystoreFile="/home/test/tomcat.teystore" keystorePass="xxx@123"  clientAuth="false"  sslProtocol="TLS" />

     

    3、重启tomcat即可通过https的方式访问页面

     

    注:此方法在tomcat8.0和tomcat9.0上验证成功,但是8.5失败(由于时间关系,我没有继续修改)。当时项目使用的是8.5.56版本的tomcat,按照配置死活不成功,后来替换为8.0.52版本,成功。并且后续在9.0.13上也可成功。

    Processed: 0.013, SQL: 9