一酌儒、本文的主要內(nèi)容
- 一些內(nèi)容的回顧
- CA證書的下載及相應(yīng)文件的介紹
- CA證書在tomcat的部署
- CA證書在spring boot的部署
- 自簽名證書的部署
二间校、一些內(nèi)容的回顧
在“Https系列之一:https的簡(jiǎn)單介紹及SSL證書的生成” 中已介紹的自簽名證書和CA證書的生成 ,其中有提到一個(gè)重要文件:keystore文件
回顧一下keystore是干什么的: keystore可理解為一個(gè)數(shù)據(jù)庫(kù),可以存很多個(gè)組數(shù)據(jù)教寂。 每組數(shù)據(jù)主要包含下面兩種數(shù)據(jù):
- 密鑰實(shí)體(Key entity)——密鑰(secret key)又或者是私鑰和配對(duì)公鑰(采用非對(duì)稱加密)
- 可信任的證書實(shí)體(trusted certificate entries)——只包含公鑰
那我們現(xiàn)在要做的就是把keystore文件部署到服務(wù)器中就OK了
三捏鱼、CA證書在服務(wù)器端的部署
-
證書的下載
在阿里云生成的針對(duì)tomcat服務(wù)器CA證書在申請(qǐng)成功后, 只要如下圖酪耕,選“下載”->”tomcat”->”下載證書for Tomcat”
就能下載相應(yīng)的tomcat證書文件导梆。
順便補(bǔ)充一下,在上圖中迂烁,除了Tomcat外看尼,還可以針對(duì)其它的服務(wù)器下相應(yīng)的證書, 如:Nginx,Apache,IIS等盟步,有需要的請(qǐng)自行研究藏斩。 下載的文件如下:
已下載證書各文件的介紹:
1): *.pfx為keystore文件,服務(wù)器用的就是這個(gè)文件
2): pfx-password.txt里包含有keystore所用到的密碼
3): *.key里面包含的是私鑰却盘,暫時(shí)沒用到此文件
4): *.pem里面包含的是公鑰狰域,主要給客戶端針對(duì)Tomcat服務(wù)器的部署
上圖中的”下載證書for Tomcat”那個(gè)頁(yè)面有對(duì)Tomcat服務(wù)器的詳細(xì)配置如下:
1):在Tomcat的安裝目錄下創(chuàng)建cert目錄媳拴,并且將下載的全部文件拷貝到cert目錄中
2):找到安裝Tomcat目錄下該文件server.xml,一般默認(rèn)路徑都是在 conf 文件夾中。找到
keystoreFile="cert/*.pfx"
keystoreType="PKCS12"
#此處的證書密碼兆览,請(qǐng)參考pfx-password.txt中的密碼
keystorePass="證書密碼"
完整的配置如下屈溉,其中port屬性根據(jù)實(shí)際情況修改:
<Connector port="443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="cert/*.pfx"
keystoreType="PKCS12"
keystorePass="證書密碼"
clientAuth="false"
SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>
4:針對(duì)spring boot的部署
spring boot因?yàn)槭莾?nèi)嵌了tomcat的,理論上對(duì)tomcat的配置是一樣的
只不過(guò)spring boot有更簡(jiǎn)單的配置方法
1): 把*.pfx copy到工程相應(yīng)的resources下面
2):修改resources\application.properties拓颓,增加如下屬性
server.port=443
server.ssl.key-store=classpath:*.pfx
server.ssl.key-store-password=證書密碼
server.ssl.keyStoreType=PKCS12
四语婴、自簽名證書在服務(wù)器的配置
其實(shí)自簽名證書的配置和CA證書的配置一樣
只不過(guò):
1:把*.pfx換成你之前生成的keystore.p12
2:把密碼換成你之前生成keystore所用的密碼,如在上一節(jié)中設(shè)置的:123456
五驶睦、運(yùn)行服務(wù)器測(cè)試https
spring boot環(huán)境下砰左,除了增加上面的配置外,并不需要增加任何一句代碼场航。 好吧缠导,重要的時(shí)刻來(lái)了,運(yùn)行服務(wù)器溉痢,輸入https網(wǎng)址僻造,CA證書的如下圖,開心吧孩饼,你喜歡的綠色的安全標(biāo)志:
自簽證書的如下圖髓削,顯示不安全呵,但可點(diǎn)“高級(jí)”->”繼續(xù)訪問(wèn)“去訪問(wèn):
更多內(nèi)容請(qǐng)看:Https系列之三:讓服務(wù)器同時(shí)支持http镀娶、https立膛,基于spring boot