天天看點

Linux生成Tomcat SSL協定的證書生成證書

生成證書

進入到Tomcat的conf目錄下

Linux生成Tomcat SSL協定的證書生成證書

在Tomcat的conf目錄下輸入生成證書指令

keytool -genkey -alias tomcat -keyalg RSA -validity 3600 -keystore .keystore
           
Linux生成Tomcat SSL協定的證書生成證書

參數詳解

  • keytool -genkey:自動使用預設的算法生成公鑰和私鑰
  • alias[名稱]:給證書取個别名
  • keyalg:制定密鑰的算法,如果需要制定密鑰的長度,可以再加上keysize參數,密鑰長度預設為1024位,使用DSA算法時,密鑰長度必須在512到1024之間,并且是64的整數倍
  • keystore:參數可以指定密鑰庫的名稱。密鑰庫其實是存放迷藥和證書檔案,密鑰庫對應的檔案如果不存在會自動建立。
  • validity:證書的有效日期,預設是90天
  • keypass changeit:不添加證書密碼
  • storepass changeit:不添加存儲證書的密碼

按照指令提示往下操作

Linux生成Tomcat SSL協定的證書生成證書

Tomcat配置https

在/tomcat/conf的安裝目錄下的找到server.xml 檔案,修改 server.xml 檔案,配置https連接配接器。新增一個Connector,tomcatm預設隻有8080的。

tomcat 8.0以上的版本配置

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true">
        <SSLHostConfig>
            <Certificate certificateKeystoreFile="conf/.keystore"
                  type="RSA" certificateKeystorePassword="123456" />
        </SSLHostConfig>
</Connector>

           

tomcat8及8以下的版本配置

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" 
			   keystoreFile="conf/.keystore" keystorePass="123456"
/> 
           

啟動Tomcat通路8443端口

Linux生成Tomcat SSL協定的證書生成證書

web項目強制跳轉https

在項目的web.xml最後加上如下代碼即可

<!-- 配置http自動轉為 https -->
  <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>
           

繼續閱讀