這篇文章主要介紹Nginx如何啟用OCSP Stapling,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
站在用戶(hù)的角度思考問(wèn)題,與客戶(hù)深入溝通,找到登封網(wǎng)站設(shè)計(jì)與登封網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶(hù)體驗(yàn)好的作品,建站類(lèi)型包括:成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、主機(jī)域名、虛擬主機(jī)、企業(yè)郵箱。業(yè)務(wù)覆蓋登封地區(qū)。
在線(xiàn)證書(shū)狀態(tài)協(xié)議(Online Certificate Status Protocol),簡(jiǎn)稱(chēng) OCSP,是一個(gè)用于獲取 X.509 數(shù)字證書(shū)撤銷(xiāo)狀態(tài)的網(wǎng)際協(xié)議,在 RFC 6960 中定義。OCSP 用于檢驗(yàn)證書(shū)合法性,查詢(xún)服務(wù)一般由證書(shū)所屬 CA 提供。OCSP 查詢(xún)的本質(zhì),是一次完整的 HTTP 請(qǐng)求加響應(yīng)的過(guò)程,這中間涵括的 DNS 查詢(xún)、建立 TCP 連接、Web 端工作等步驟,都將耗費(fèi)更多時(shí)間,使得建立 TLS 花費(fèi)更多時(shí)長(zhǎng)。
而這時(shí),OCSP Stapling 出現(xiàn)了。經(jīng)由 OCSP Stapling(OCSP 封套),Web 端將主動(dòng)獲取 OCSP 查詢(xún)結(jié)果,并隨證書(shū)一起發(fā)送給客戶(hù)端,以此讓客戶(hù)端跳過(guò)自己去尋求驗(yàn)證的過(guò)程,提高 TLS 握手效率。
生成 OCSP Stapling 文件
經(jīng)過(guò)以下步驟生成所需的用于 OCSP Stapling 驗(yàn)證的文件
首先,需要準(zhǔn)備三份證書(shū):
站點(diǎn)證書(shū)(website.pem)+ 根證書(shū)(root.pem)+ 中間證書(shū)(intermediate.pem)
中間證書(shū)和根證書(shū),需要根據(jù)你的證書(shū)的 CA,去下載對(duì)應(yīng)的證書(shū)
以下列出了 Let's Encrypt 的中間證書(shū)和根證書(shū)的下載地址:
根證書(shū):
DST Root CA X3 https://ssl-tools.net/certificates/dac9024f54d8f6df94935fb1732638ca6ad77c13.pem
ISRG Root X1 https://letsencrypt.org/certs/isrgrootx1.pem
中間證書(shū):
Let's Encrypt Authority X1 https://letsencrypt.org/certs/lets-encrypt-x1-cross-signed.pem
Let's Encrypt Authority X2 https://letsencrypt.org/certs/lets-encrypt-x2-cross-signed.pem
Let's Encrypt Authority X3 https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem
Let's Encrypt Authority X4 https://letsencrypt.org/certs/lets-encrypt-x4-cross-signed.pem
這里以 DST Root CA X3 根證書(shū) + Let's Encrypt Authority X3 中間證書(shū) 為例(現(xiàn)在 Let's Encrypt 簽發(fā)的證書(shū)基本都是這樣的組合):
# 下載根證書(shū)和中間證書(shū) wget -O root.pem https://ssl-tools.net/certificates/dac9024f54d8f6df94935fb1732638ca6ad77c13.pem wget -O intermediate.pem https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem # 生成 OCSP Stapling 驗(yàn)證文件 # 注意,中間證書(shū)在上、根證書(shū)在下 cat cat intermediate.pem > chained.pem cat root.pem >> chained.pem
這樣,生成的 chained.pem 就是所需的 OCSP Stapling 驗(yàn)證文件。
OCSP Stapling Response
openssl x509 -in website.pem -noout -ocsp_uri
使用這個(gè)命令后,返回你的證書(shū)對(duì)應(yīng)的 OCSP 服務(wù)地址
例如,Let's Encrypt 現(xiàn)在的 OCSP 服務(wù)地址是 http://ocsp.int-x3.letsencrypt.org/
以 Let's Encrypt 為例,獲取站點(diǎn)證書(shū)的 OCSP Response
openssl ocsp -no_nonce \ -issuer intermediate.pem \ -CAfile chained.pem \ -VAfile chained.pem \ -cert website.pem \ -url http://ocsp.int-x3.letsencrypt.org \ -text
若沒(méi)有錯(cuò)誤,會(huì)返回如下:
Response verify OK
website.pem: good
This Update: Oct 24 00:00:41 2017 GMT
Next Update: Oct 31 00:00:41 2017 GMT
Nginx 啟用 OCSP Stapling
ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate ~/chained.pem; resolver 208.67.222.222 valid=300s; resolver_timeout 5s;
然后重啟 Nginx,就成功啟用 OCSP Stapling 了
OCSP Stapling Status
復(fù)制代碼 代碼如下:
openssl s_client -connect sometimesnaive.org:443 -status -tlsextdebug < /dev/null 2>&1 | grep -i "OCSP response"
若站點(diǎn)已成功啟用 OCSP Stapling,會(huì)返回以下
OCSP response: OCSP Response Data: OCSP Response Status: successful (0x0) Response Type: Basic OCSP Response
若返回這個(gè),明顯就是失敗了
OCSP response: no response sent
也可以訪(fǎng)問(wèn) ssllabs 進(jìn)行 SSL 測(cè)試,其中也能看到 OCSP Stapling 開(kāi)啟與否的報(bào)告。
以上是“Nginx如何啟用OCSP Stapling”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!