內網Https 自籤Https證書 配合Tomcat 實現內網Https詳細圖文

轉載地址:https://www.cnblogs.com/ChromeT/p/11122480.html

 

目錄

 


內網項目啓用Https配置手冊

軟件需求:

  1. OpenSSL https://www.openssl.org/
  2. 已經安裝了Java Jdk環境

 

製作前的需求:

  1. 已經配置了Jdk環境變量
  2. 安裝好OpenSSL後配置了環境變量

 

 

 

回到頂部

開始製作CA根證書

在任意盤符(我這裏選擇G盤)下新建一個文件夾 這裏我建立一個ca的文件夾用來存儲生成的CA證書

 

回到頂部

創建私鑰

生成私鑰命令:openssl genrsa -out ca/ca-key.pem 1024

 

 

回到頂部

創建證書請求

命令:openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem

 

 

 

 

回到頂部

生成CA自簽證書

命令:openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days 365010年有效期)

 

 

 

回到頂部

製作服務器證書

用 java 自帶的 keytool工具生成密鑰(密碼123456)

命令:keytool -genkey -alias example -validity 365 -keyalg RSA -keysize 1024 -keypass 123456 -storepass 123456 -keystore example.jks

 1488478-20190702184507919-1820395007.pnguploading.4e448015.gif轉存失敗重新上傳取消

 

 

 

用keytool工具生成證書請求(涉及到的證書名字是 example)

命令:keytool -certreq -alias example -sigalg MD5withRSA -file example.csr -keypass 123456 -keystore example.jks -storepass 123456

 

 

 

根據證書請求,用CA簽證,生成服務器證書

命令:openssl x509 -req -in example.csr -out example.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -days 365 -set_serial 1

 

 

 

 

回到頂部

向 本地keystore 密鑰庫中導入證書

命令:keytool -import -v -trustcacerts -keypass 123456 -storepass 123456 -alias root -file ca/ca-cert.pem -keystore example.jks

 1488478-20190702184529626-1458428110.pnguploading.4e448015.gif轉存失敗重新上傳取消

 

 

回到頂部

導入服務器證書

命令:keytool -import -v -trustcacerts -storepass 123456 -alias example -file example.pem -keystore example.jks

 

 

回到頂部

單獨導出 CA 作爲信任證書

命令:keytool -import -alias example-ca -trustcacerts -file ca/ca-cert.pem -keystore exampletrust.jks

 

這裏輸入的密碼是:123456 證書的密碼

 

查看生成的文件

 

 

回到頂部

客戶端安裝證書:

命令:openssl pkcs12 -export -clcerts -in ca/ca-cert.pem -inkey ca/ca-key.pem -out ca/ca.p12

 

 

 

 

這裏輸入的密碼是 123456(證書密碼)

查看生成證書:ca文件夾下面

 

ca.p12文件就是生成的證書

雙擊打開導入——》當前用戶——》下一步——》輸入密碼(123456)——》

打開ie瀏覽器,在 internet 選項``內容中清除ssl狀態,重啓瀏覽器再重新訪問,就不會再有不信任的提示。

 

 

 

 

點擊下一步完成即可!

回到頂部

Tomcat 服務器導入證書

首先複製剛纔生成的那兩個文件:

 

複製到tomcate 目錄下面:例如放到conf文件夾下

 

 

打開server.xml文件 複製下面內容到指定位置:

複製內容:

複製代碼

<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"

      maxThreads="250" scheme="https" secure="true"

      clientAuth="false" sslProtocol="TLS" keystoreFile="conf/example.jks"

      keystorePass = "123456" truststoreFile="conf/exampletrust.jks"

      truststorePass="123456"/>

複製代碼

 

 

 

放置位置:(注意放置位置一定要對!!!!!)

 

說明:123456表示的是證書密碼  443是https默認端口

 

回到頂部

修改默認的http端口和https端口

默認Tomcat HTTP端口8080 HTTPS默認端口8443

 

修改下列位置8080——》80      8443——》443

 

 

=-------------------------------------------

 

回到頂部

強制使用Https

打開conf文件夾下面的web.xml(文件尾部!!!!)  添加以下代碼到指定位置

 

 

 

複製代碼

<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>

複製代碼

 

 

回到頂部

最終效果

 

 

 

谷歌:

 1488478-20190702185001311-1607800753.pnguploading.4e448015.gif轉存失敗重新上傳取消

 

IE

 

 

參考博客:https://blog.csdn.net/byg184244735/article/details/85071877

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章