通常商用伺服器使用https協定需要申請SSL證書,證書都是收費的,價格有貴的有便宜的。它們的差別是發行證書的機構不同,貴的證書機構更權威,證書被浏覽器否決的幾率更小。
非商業版本可以通過keytool來生成。
用keytool工具生成證書與配置
1、相關工具說明
此處使用1.7.0_79版本,如圖所示:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5yM5ATNyYTOwUTL3YjN4ETMyYTM2IzMwYTMwITLzAjN1kzLcNDM2EDMy8CXzAjN1kzLcd2bsJ2Lc12bj5ycn9Gbi52YuUTMwIzcldWYtl2Lc9CX6MHc0RHaiojIsJye.png)
切換到jdk bin目錄下面,如圖:
證書密鑰生成
1、建立證書
keytool -genkey -alias [your_alias_name] -keyalg RSA -keystore [keystorePath]
keytool -genkey -alias alibaba -keyalg RSA -keystore F:/keys/alibabakey
[your_alias_name] 可以是網站名,比如:alibaba
<your_keystore_filename> 生成的證書所在目錄及名稱,此處用 F:/keys/alibabakey
輸入以上指令以後會提示讓輸入域名(必填)相關資訊。此處可模拟一個,如alibaba.com。
密鑰庫密碼随便輸入,隻有能記得住就行。此處使用:123456
導出證書
keytool -export -file f:/keys/alibaba.crt -alias alibaba -keystore F:/keys/alibabakey
為用戶端的JVM導入證書
把證書導入到jvm,這裡輸入的keystore密碼為changeit
keytool -import -keystore D:\Application\Java\jre7\lib\security\cacerts -file f:/keys/alibaba.crt -alias alibaba
tomcat配置
伺服器版本說明
tomcat使用apache-tomcat-7.0.67版本
到tomcat安裝目錄D:\Application\apache-tomcat-7.0.67\conf找到server.xml檔案。對此檔案進行編輯。
找到:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"/>
未修改的情況下,此節點是被注釋的。請放開注釋。并在此節點中增加屬性配置:keystoreFile="F:/keys/alibabakey" keystorePass="123456" 此處的兩個值是上面生成的。和設定的密鑰庫密碼。此處的keystoreFile和keystorePass要區分大小寫。寫錯的話啟動tomcat的時候會報錯。
設定完成後為:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="F:/keys/alibabakey" keystorePass="123456"/>
最後一步,找到C:\Windows\System32\drivers\etc\hosts檔案,編輯此檔案,在最後增加一行
127.0.0.1 alibaba.com
因為生成密鑰的時候輸入的域名是這個。
啟動tomcat
略
通路檢視效果
在位址欄輸入:https//alibaba.com:8443/
商用證書申請與相關配置
請參照:詳解 Nginx + Tomcat HTTPS/SSL 配置
http://my.oschina.net/zhlmmc/blog/42125?fromerr=Q8wKtQvz
轉載于:https://www.cnblogs.com/lltse/p/5323234.html