zoukankan      html  css  js  c++  java
  • Tomcat的Https设置及Http自动跳转Https

    Https相关介绍
        Https是由NetScape公司设计的一个基于Http的加密传输协议,可以这样理解Https = Http +SSL(安全套接层),Https的端口为443,而且还需要申请CA数字证书认证。

    3.Https的设置
    ①申明CA数字证书

    这里推荐一个免费的阿里平台的CA数字证书,点击申请 点击Symantec>选择证书类型增强型OV SSL,然后就会出现免费DV SSL。

    进入证书控制台>点击申请签发证书>填写申请信息,证书绑定你自己的域名:www.f8xn.top,等待申核。SSL证书:几分钟-几小时左右可签发。
    域名授权验证
    RAM访问控制,同意授权
    授权系统自动添加TXT解析记录,自动完成域名授权验证(会在域名解析中自动增加一条txt记录)。
    数字证书有效期是在审核通过之后的1年内有效。免费证书只参绑定一个域名。

    tomcat也可配置手动生成的SSL证书,这里不再介绍。
    SSL证书安装/配置
    Tomcat6之前支持JKS格式证书,从Tomcat7之后开始支持PFX格式证书
    审核通过后到证书控制台下载SSL证收, 包含PFX格式证书和密码文件。
    阿里云的服务器,只支持端口443!,所以我们配置<Connector port="8443 />"节点时,填端口改成443。
    并在阿里云上面添加开放443端口,才可以用https访问Tomcat的网站(重点)。开放端口时选择协议类型https443。
    在你的tomcat目录下,新建目录/apache-tomcat-8/conf/cert,把你的证书_www..com.pfx拷贝进来。
    修改server.xml
    vim /apache-tomcat-8/conf/cert/server.xml

    HTTP证书路径keystoreFile建议使用绝对路径/apache-tomcat-8/conf/cert/_www.com.pfx
    证书密码填写刚才pfx-password.txt里的密码keystorePass="yKmbolin"。


    在protocol中建议使用“org.apache.coyote.http11.Http11Protocol”,这样对性能有最大的优化。(但是这样会不支持中文URIEncoding="UTF-8"。)

    <Connector port="443" 
         protocol="org.apache.coyote.http11.Http11Protocol" 
         SSLEnabled="true" 
         scheme="https" 
         secure="true" 
         keystoreFile="/apache-tomcat-8/conf/cert/***_www.***.com.pfx" 
         keystoreType="PKCS12" 
         keystorePass="yKmbolin" 
         clientAuth="false" 
         SSLProtocol="TLSv1+TLSv1.1+TLSv1.2" 
     ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>

    tomcat6 JKS格式证书

    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
      maxThreads="150" scheme="https" secure="true"
      clientAuth="false"
      keystoreFile="/apache-tomcat-8/ssl/server.jks" keystorePass="123456" truststoreFile="/apache-tomcat-8/ssl/server.jks" truststorePass="123456" sslProtocol="TLS" />

    clientAuth=”true”,则开启双向认证,客户端访问需要有客户端证书;
    keystoreFile trustStroreFile 传入您制作好的 JKS 文件的路径,示例中以 server.jks 为例;
    keystorePass trustStrorePass 传入您的 JKS 的密码,示例中以 jks 的密码 123456 为例。

    Http自动跳转Https

    ①编辑conf/web.xml文件

    ②在web.xml 文中上行</web-app>加上如下配置:
    <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>
    
    然后 :wq保存并退出。
    
    ③重启Tomcat服务
    
     输入  ./startup.sh

    保存退出。重启tomcat即可。
    /apache-tomcat-85/bin/shutdown.sh
    /apache-tomcat-8/bin/startup.sh

    打开测试 https://www.***.com
    查看网站的安全证书,在开发者工具上
    按F12>Security>View certificate。

    注意tomcat和jdk版本要各自支持

    来自:https://www.cnblogs.com/f8xn/articles/10217768.html

       https://blog.csdn.net/gary_yan/article/details/77981303

  • 相关阅读:
    软件仓库配置及编译http2.4及文件系统创建实例
    查找、打包、sed实例
    文件管理工具和基础脚本实例
    文件管理实例
    Linux系统中vim设置tab缩进为4个字符
    linux文件管理类命令及实例讲解
    文件元数据信息介绍及修改文件时间
    Linux发行版的系统目录名称命名规则以及用途
    回调和递归
    关于for循环的小案例
  • 原文地址:https://www.cnblogs.com/luck666/p/10221247.html
Copyright © 2011-2022 走看看