国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

tomcat配置https協議詳細步驟

2019-11-06 09:37:22
字體:
來源:轉載
供稿:網友

1.介紹了密碼學的相關基礎知識后,本文介紹如何在tomcat上搭建https服務。

 環境:jdk7,tomcat7,windows7

2.我們使用java中自帶的javatool工具來制作所需的https所需的證書,keytool是java自帶的用于密鑰和證書的生成和管理工具。

3.這里先介紹兩個文件格式:

 jks(java key store),用來存儲密鑰已經數字證書的文件

 csr(Certificate Signing Request),證書請求文件(就是證書申請者向相關證書頒發機構申請證書時所提交的文件,機構使用其根證書私鑰簽名就生成了證書公鑰文件--證書)。

 cer:用于存儲公鑰證書的文件(就是數字證書)

4.在開始之前我們先明白我們應該怎樣做:

  4.1.先制作一個根證書(用于簽發服務證書)

  4.2.生成一個CSR格式的證書請求文件

  4.3.用根證書對證書請求文件做簽名,并生成服務證書

  4.4.將根證書添加到瀏覽器受信任的根證書頒發機構中

  4.5.配置tomcat,使之支持https,并為它指明已經簽發好的服務證書的路徑

  4.6.部署一個web應用,并訪問。

5.我們先進入命令行窗口,輸入keytool,顯示如下:

         tomcat配置https協議詳細步驟

 我們可以看到,有生成證書請求,生成密鑰對,根據證書請求生成證書等想關命令。

 

Step1:生成根證書

     keytool -genkeypair -alias ROOTCERT -keyalg RSA -keystore rootlib.jks

     命令解釋:生成一對RSA非對稱密鑰和一個自簽名證書,以別名ROOTCERT存儲在rootlib中。

     注意:enter后,會提示輸入密鑰庫的使用口令,和填寫相關OU,CN等信息。如下圖:

         tomcat配置https協議詳細步驟

     之后會在你的當前工作目錄下生成一個rootlib.jks的文件。

Step2:生成證書請求

      1)keytool -genkeypair -alias SERVERCERT -keyalg RSA -keystore serverlib.jks (跟step1步驟一樣)。

       注意:此時”您的名字與姓氏是什么” ,需要輸入localhost(就是證書請求者的域名)。

      2)keytool -certreq -file server.csr -alias SERVERCERT -keystore serverlib.jks

       命令解釋:在serverlib文件中從別名為SERVERCERT中取出公鑰和用戶信息生 成證書請求,并寫入到server.csr文件中。

      之后會在你的當前工作目錄下生成一個server.csr的文件。

Step3:用根證書對證書請求簽名,生成應用證書

      keytool -gencert -infile server.csr -outfile servercert.cer -alias ROOTCERT -keystore rootlib.jks

      命令解釋:使用別名為ROOTCERT的私鑰對server.csr證書請求進行簽發證書,并導入到servercert.cer 文件中。

Step4:導出根證書,添加為客戶端受信任的根證書頒發機構中

     1)keytool -exportcert -alias ROOTCERT -file root.cer -keystore rootlib.jks

     命令解釋:從rootlib.jks將別名ROOTCERT的證書導出到root.cer文件中

     2)回到圖形界面,切到命令窗口的工作目錄下,會有5個文件。

                    tomcat配置https協議詳細步驟

     雙擊root.cer

             tomcat配置https協議詳細步驟

     點擊安裝證書,然后下一步,注意:

          tomcat配置https協議詳細步驟

    在證書存儲時,選擇放入指定的證書存儲,點擊瀏覽,選擇受信任的根證書頒發 機構,然后確認,下一步,完成,確認添加,即可。

Step5:配置tomcat

     1)我們先要更新serverlib.jks中的證書(用根證書簽發好的應用證書--servercert.cer)

       keytool -importcert -alias SERVERCERT -file server.cer -keystore serverlib.jks

      此時會報:無法從回復中建立鏈(這是因為更新的證書無法信任)。我們先要將根證書導入到serverlib.jks中,使之信任

      2)keytool -importcert -alias TRUSTCERT -file root.cer -keystore serverlib.jks

      3)這是在執行1)中的命令,即可更新。

       注意:更新證書時的別名不能寫錯,否則keytool工具會認為添加。

      4)現在開始配置tomcat,修改server.xml文件

                   <Connector port="443" PRotocol="org.apache.coyote.http11.Http11Protocol"

               minSpareThreads="5" maxSpareThreads="75"

               enableLookups="true" disableUploadTimeout="true"

               acceptCount="100"  maxThreads="200" SSLEnabled="true" 

                    scheme="https" secure="true"

               keystoreFile="E:/key/serverlib.jks" keystorePass="123456"

               clientAuth="false" sslProtocol="TLS"/>

          clientAuth:設置是否雙向驗證,默認為false,設置為true代表雙向驗證,這里我們一般只做服務器驗證

          keystoreFile:服務器證書文件路徑

          keystorePass:服務器證書密碼

          truststorePass:根證書密碼

           注意:tomcat中https端口是8443,我改成了443(https的默認端口),需要將http的redirectPort值也要改成443,這樣瀏覽器發送https請求時才可以重定向到修改的443端口上。

       5)部署一個web應用,修改首頁index.jsp

            tomcat配置https協議詳細步驟

        將應用添加到tomcat中,啟動tomcat。

        在地址欄輸入:

            tomcat配置https協議詳細步驟

         點擊Login

            tomcat配置https協議詳細步驟

         此時再看地址欄,我們點擊https前面的鎖,就可以看到我們的應用證書了。

              tomcat配置https協議詳細步驟

        

          在點擊證書信息,就可以看我們申請的證書內容了,此時我們再用代理的方式抓包如下:

                tomcat配置https協議詳細步驟

         

          瀏覽器與服務器之間數據就會被加密后在傳輸了。

          注意:在step2時,我們生成證書請求時的 ”您的名字與姓氏是什么”的值需要我們的服務的主機名,如果不一致的瀏覽器訪問時就會報錯,如下圖

                 tomcat配置https協議詳細步驟

           這樣,一個簡單https協議服務我們就搭建好了。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 福安市| 鄂托克前旗| 旌德县| 托克托县| 武山县| 息烽县| 塔城市| 定边县| 襄垣县| 蒙阴县| 延寿县| 泽州县| 乐业县| 抚远县| 保亭| 清流县| 景谷| 柳河县| 五华县| 金沙县| 施秉县| 阳西县| 禹州市| 福清市| 观塘区| 阿巴嘎旗| 乌拉特后旗| 崇阳县| 江源县| 厦门市| 新疆| 榆树市| 娱乐| 邯郸市| 宁明县| 攀枝花市| 三江| 达拉特旗| 古浪县| 绵竹市| 阜阳市|