1. 程式人生 > >Tomcat9配置https協議訪問

Tomcat9配置https協議訪問

        從官網上下載下來的Tomcat,啟動後訪問的地址是http://localhost:8080/,採用的是http協議訪問。下面講解的是配置https協議訪問。

一、工具版本號

        Tomcat:apache-tomcat-9.0.10

        JDK:jdk1.8.0_144

二、使用【JAVA_HOME】\jdk1.8.0_144\bin目錄下的keytool.exe生成一個名字為tomcat的證書,存放在E盤下的tomcat.keystore這個金鑰庫中。

keytool -genkey -alias tomcat -keyalg RSA -keystore e:/tomcat.keystore

三、配置https聯結器

        1、將生成的tomcat.keystore金鑰庫檔案拷貝到Tomcat伺服器的conf目錄下;

        2、修改server.xml檔案,配置https聯結器;

        a、註釋掉http聯結器

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

        b、釋放掉https聯結器

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

        c、修改https聯結器內容,包含埠號、祕鑰庫檔案路徑,以及配置祕鑰的口令(就是再生成祕鑰檔案時設定的口令)

    <Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true">
        <SSLHostConfig>
            <Certificate certificateKeystoreFile="conf/tomcat.keystore"
                         type="RSA" certificateKeystorePassword="123456"
/> </SSLHostConfig> </Connector>
        備註:瀏覽器訪問8080埠的聯結器時,會以加密的方式來訪問web伺服器,聯結器收到瀏覽器的請求後,會向瀏覽器出示一份數字證書,瀏覽器再用數字證書裡面的公鑰來加密資料, certificateKeystoreFile="conf/tomcat.keystore"用來指明金鑰庫檔案的所在路徑,伺服器從金鑰庫中提取證書時需要密碼,certificateKeystorePassword="123456"指明金鑰庫的訪問密碼。(tomcat8及8一下的版本配置的是keystoreFile="conf/.keystore"keystorePass="123456"四、啟動Tomcat,使用https://localhost:8080/進行訪問測試。