在TOMCAT下配置Https

主要分2步:让tomcat能使用https--->强制使用https访问

1.让tomcat能使用https
  A.在运行命令JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg  RSA  -keystore     C:\Tomcat\GMAE3.0Tomcat\tomcat.keystore

    并设置密码。这样就生成了证书,将证书放到合适的地方(任意地方都可以)
  B.打开tomcat目录下的server.xml文件并找到关于ssl的相关段

    <!-- Define a SSL HTTP/1.1 Connector on port 8443  
    This connector uses the JSSE configuration, when using APR, the   
    connector should be using the OpenSSL style configuration  
    described in the APR documentation -->  
    <!--<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"  
    maxThreads="150" scheme="https" secure="true"  
    clientAuth="false"  sslProtocol="TLS" />-->  

 C.去掉注释,添keystoreFile="C:\Tomcat\GMAE3.0Tomcat\tomcat.keystore"
  keystorePass="tomcat"的属性 (keystorePass为你在生成tomcat.keystore时设置的密码一致)
  改动完成后配置为:

     
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"   maxThreads="150" scheme="https" secure="true" clientAuth="false" keystoreFile="C:\Tomcat\GMAE3.0Tomcat\tomcat.keystore" keystorePass="123456" sslProtocol="TLS" />

然后重启tomcat就能使用HTTPS访问

如果不行,请将端口8443改为8080并将原有的8080注释掉

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

<Connector port="8080" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" keystoreFile="D:\\tomcat.keystore" keystorePass="123456" 
			   truststoreFile="D:\\tomcat.keystore" truststorePass="123456" sslProtocol="TLS" />

2.强制https访问

  在tomcat\conf\web.xml中的</welcome-file-list>后面加上这样一段:

    <login-config>  
        <!-- Authorization setting for SSL -->  
        <auth-method>CLIENT-CERT</auth-method>  
        <realm-name>Client Cert Users-only Area</realm-name>  
    </login-config>  
    <security-constraint>  
        <!-- Authorization setting for SSL -->  
        <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>  

猜你喜欢

转载自493420337.iteye.com/blog/2024086
今日推荐