Linux Centos7 系统Tomcat8.5.54 配置SSL证书

         由于Tomcat爆出漏洞,前几天公司让在测试环境配置Tomcat8.5.51的https ,配置了很久都不对。最后换了Tomcat8.5.54的才配置成功。下面就是我配置的过程,记录一下,与大家共勉。

  • 1.首先公司的泛域名,运维给了ssl证书的文件包:

  • 2.我们选取Tomcat的ssl证书,有jks文件和key的文件。

  •  3.我下载了Tomcat8.5.54的压缩包

    wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.54/bin/apache-tomcat-8.5.54.tar.gz

 下载成功后查看  ls -la

 解压 tar -xzvf apache-tomcat-8.5.54.tar.gz

  • 4.下面就是配置Tomcat下面 conf目录下的server.xml

    1>将jks文件传到conf文件目录下(也可以自己建一个目录,可以用相对路径也可以用绝对路径,本人用的相对路径)

    2> 编辑 server.xml   >    vim server.xml 

       找到红框的这一块

    修改这两块内容

   <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" /> 

改为:

 <Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="443" />


 <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true">
        <SSLHostConfig>
            <Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
                         type="RSA" />
        </SSLHostConfig>
    </Connector>
改为:

<Connector
           protocol="org.apache.coyote.http11.Http11NioProtocol"
           port="443" maxThreads="200"
           scheme="https" secure="true" SSLEnabled="true"
           keystoreFile="conf/jks_name.jks" keystorePass="key"
           clientAuth="false" sslProtocol="TLS"
           ciphers="TLS_RSA_WITH_AES_128_GCM_SHA256,
                        TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
                        TLS_RSA_WITH_AES_128_CBC_SHA,
                        TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
                        TLS_RSA_WITH_AES_128_CBC_SHA256,
                        TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
                        SSL_RSA_WITH_3DES_EDE_CBC_SHA,
                        TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA" />

 

  • 5.     esc   :wq 保存退出,然后启动tomcat,就可以了。

  • 6.配置中遇到的问题

之前按官方文档配置http://tomcat.apache.org/tomcat-8.5-doc/ssl-howto.html 一直未成功。

 后来在其他网站上找到要配置一下内容

ciphers="TLS_RSA_WITH_AES_128_GCM_SHA256,
                        TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
                        TLS_RSA_WITH_AES_128_CBC_SHA,
                        TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
                        TLS_RSA_WITH_AES_128_CBC_SHA256,
                        TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
                        SSL_RSA_WITH_3DES_EDE_CBC_SHA,
                        TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA" 

补:PFX类型的证书

 <Connector port="443"  
            protocol="org.apache.coyote.http11.Http11NioProtocol"  
            maxThreads="150"
            SSLEnabled="true" >
      <SSLHostConfig>
            <Certificate  certificateKeystoreFile="/usr/local/tomcat/cert/证书域名.pfx"  
                                certificateKeystorePassword="证书密码"  
                                certificateKeystoreType="PKCS12" />  
      </SSLHostConfig>
 </Connector>

1.证书类型为PFX格式时,certificateKeystoreType修改为PKCS12。
2.Connector port有两种运行模式(NIO和APR),请选择NIO模式(也就是protocol="org.apache.coyote.http11.Http11NioProtocol")这一段进行配置。

 

# http跳转https 在web.xml 最后下添加一下代码

    <security-constraint>
         <web-resource-collection >
              <web-resource-name >
SSL</web-resource-name>
              <url-pattern>
/*</url-pattern>
       </web-resource-collection>
       <user-data-constraint>
                    <transport-guarantee>
CONFIDENTIAL</transport-guarantee>
       </user-data-constraint>
    </security-constraint>

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值