溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

SSL證書生成,完成HTTPS驗(yàn)證

發(fā)布時(shí)間:2020-08-14 15:09:51 來源:ITPUB博客 閱讀:216 作者:hdgara1 欄目:網(wǎng)絡(luò)安全

SSL證書生成,完成HTTPS驗(yàn)證

SSL證書是HTTP升級到HTTPS安全連接的直達(dá)路徑,SSL證書可通過向數(shù)字證書頒發(fā)機(jī)構(gòu)(CA)申請。然而,SSL證書的制作也不是一氣呵成,它也需要一定的程序,但是也并不復(fù)雜。只要申請資料審核通過,制作SSL證書也比較快捷迅速。下面一起了解如何生成SSL證書。

  SSL證書 的類型 包括:

1,CA證書,也叫根證書或者中間級證書。如果是單向https認(rèn)證的話,該證書是可選的。不安裝CA證書的話,瀏覽器默認(rèn)是不安全的。

2,服務(wù)器證書,必選項(xiàng)。通過key,證書請求文件csr,再通過CA證書簽名,生成服務(wù)器證書。

3,客戶端證書,可選項(xiàng)。若有客戶端證書則是雙向https驗(yàn)證。

以上所有證書都可以自己生成。

文件后綴

linux系統(tǒng)是不以后綴名來判斷文件類型的,但是為了我們能夠更好地判斷文件用途,所以添加各種后綴。以下是約定成俗的后綴。

*.key:密鑰文件,一般是SSL中的私鑰;

*.csr:證書請求文件,里面包含公鑰和其他信息,通過簽名后就可以生成證書;

*.crt, *.cert:證書文件,包含公鑰,簽名和其他需要認(rèn)證的信息,比如主機(jī)名稱(IP)等。

*.pem:里面一般包含私鑰和證書的信息。

SSL證書生成,完成HTTPS驗(yàn)證

服務(wù)器證書的生成

a)  生成服務(wù)器私鑰

openssl genrsa -des3 -out server.key 1024

輸入加密密碼,用 128 位 rsa 算法生成密鑰,得到 server.key 文件。

b)  生成服務(wù)器證書請求( CSR )

openssl req -new -key server.key -out server.csr

CSR( Certificate Signing Request)是一個(gè)證書簽名請求,在申請證書之前,首先要在服務(wù)器上生成 CSR ,并將其提交給 CA 認(rèn)證中心, CA 才能簽發(fā) SSL 服務(wù)器證書。也可以認(rèn)為, CSR 就是一個(gè)在服務(wù)器上生成的證書。

在生成這個(gè)文件的過程中,有一點(diǎn)需要特別注意,Common Name 填入主機(jī)名(或者服務(wù)器IP)。

c)  自己生成服務(wù)器證書

如果不使用 CA 證書簽名的話,用如下方式生成:

openssl req -x509 -days 1024 -key server.key -in server.csr > server.crt

用服務(wù)器密鑰和證書請求生成證書 server.crt , -days 參數(shù)指明證書有效期,單位為天。商業(yè)上來說,服務(wù)器證書是由通過第三方機(jī)構(gòu)頒發(fā)的,該證書由第三方認(rèn)證機(jī)構(gòu)頒發(fā)的。

如果使用 CA 證書簽名,用 openssl 提供的工具 CA.sh 生成服務(wù)器證書:

mv server.csr newreq.pem

./CA.sh -sign

mv newcert.pem server.crt

簽名證書后,可通過如下命令可查看服務(wù)器證書的內(nèi)容:

openssl x509 -noout -text -in server.crt

可通過如下命令驗(yàn)證服務(wù)器證書:

openssl verify -CAfile ca.crt server.crt

客戶證書的生成

客戶證書是可選的。如果有客戶證書,就是雙向認(rèn)證 HTTPS ,否則就是單向認(rèn)證 HTTPS 。

a)  生成客戶私鑰

openssl genrsa -des3 -out client.key 1024

b)  生成客戶證書簽名請求

openssl req -new -key client.key -out client.csr

c)  生成客戶證書(使用 CA 證書簽名)

openssl ca -in client.csr -out client.crt

d)  證書轉(zhuǎn)換成瀏覽器認(rèn)識的格式

openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.pfx

  證書列表

如果使用雙向認(rèn)證,就會有三個(gè)私鑰和三個(gè)證書。分別是 ca.key, ca.crt, server.key, server.crt, client.key, client.crt ,以及給瀏覽器的 client.pfx 。

如果使用有 CA 證書的單向認(rèn)證,證書和私鑰就是 ca.key, ca.crt, server.key, server.crt 。

如果使用無 CA 證書的單向認(rèn)證,證書和私鑰就是 server.key, server.crt 。

最后在fedora作為客戶端,wget 1.14通過命令

wget –ca-certificate=server.crt https://+ip+file 成功獲取文件,證書驗(yàn)證通過。

  SSL證書生成,完成HTTPS驗(yàn)證

全球可信CA機(jī)構(gòu)

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI