SSL證書生成,完成HTTPS驗證
SSL證照生成,完成HTTPS驗證
是HTTP升級到HTTPS安全連線的直達路徑,SSL證照可透過向數字證照頒發機構(CA)申請。然而,SSL證照的製作也不是一氣呵成,它也需要一定的程式,但是也並不複雜。只要申請資料稽核透過,製作SSL證照也比較快捷迅速。下面一起了解如何生成SSL證照。
SSL證照 的型別 包括:
1,CA證照,也叫根證照或者中間級證照。如果是單向https認證的話,該證照是可選的。不安裝CA證照的話,瀏覽器預設是不安全的。
2,伺服器證照,必選項。透過key,證照請求檔案csr,再透過CA證照籤名,生成伺服器證照。
3,客戶端證照,可選項。若有客戶端證照則是雙向https驗證。
以上所有證照都可以自己生成。
檔案字尾
linux系統是不以字尾名來判斷檔案型別的,但是為了我們能夠更好地判斷檔案用途,所以新增各種字尾。以下是約定成俗的字尾。
*.key:金鑰檔案,一般是SSL中的私鑰;
*.csr:證照請求檔案,裡面包含公鑰和其他資訊,透過簽名後就可以生成證照;
*.crt, *.cert:證照檔案,包含公鑰,簽名和其他需要認證的資訊,比如主機名稱(IP)等。
*.pem:裡面一般包含私鑰和證照的資訊。
伺服器證照的生成
a) 生成伺服器私鑰
openssl genrsa -des3 -out server.key 1024
輸入加密密碼,用 128 位 rsa 演算法生成金鑰,得到 server.key 檔案。
b) 生成伺服器證照請求( CSR )
openssl req -new -key server.key -out server.csr
CSR( Certificate Signing Request)是一個證照籤名請求,在申請證照之前,首先要在伺服器上生成 CSR ,並將其提交給 CA 認證中心, CA 才能簽發 SSL 伺服器證照。也可以認為, CSR 就是一個在伺服器上生成的證照。
在生成這個檔案的過程中,有一點需要特別注意,Common Name 填入主機名(或者伺服器IP)。
c) 自己生成伺服器證照
如果不使用 CA 證照籤名的話,用如下方式生成:
openssl req -x509 -days 1024 -key server.key -in server.csr > server.crt
用伺服器金鑰和證照請求生成證照 server.crt , -days 引數指明證照有效期,單位為天。商業上來說,伺服器證照是由透過第三方機構頒發的,該證照由第三方認證機構頒發的。
如果使用 CA 證照籤名,用 openssl 提供的工具 CA.sh 生成伺服器證照:
mv server.csr newreq.pem
./CA.sh -sign
mv newcert.pem server.crt
簽名證照後,可透過如下命令可檢視伺服器證照的內容:
openssl x509 -noout -text -in server.crt
可透過如下命令驗證伺服器證照:
openssl verify -CAfile ca.crt server.crt
客戶證照的生成
客戶證照是可選的。如果有客戶證照,就是雙向認證 HTTPS ,否則就是單向認證 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) 證照轉換成瀏覽器認識的格式
openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.pfx
證照列表
如果使用雙向認證,就會有三個私鑰和三個證照。分別是 ca.key, ca.crt, server.key, server.crt, client.key, client.crt ,以及給瀏覽器的 client.pfx 。
如果使用有 CA 證照的單向認證,證照和私鑰就是 ca.key, ca.crt, server.key, server.crt 。
如果使用無 CA 證照的單向認證,證照和私鑰就是 server.key, server.crt 。
最後在fedora作為客戶端,wget 1.14透過命令
wget –ca-certificate=server.crt 成功獲取檔案,證照驗證透過。
全球可信CA機構
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31483669/viewspace-2683277/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 生成https證書HTTP
- Jmeter進行HTTPS介面壓測及SSL證書驗證JMeterHTTP
- HTTPS的SSL證書配置HTTP
- Tomcat 安裝SSL證書 – HTTPS SSL 教程TomcatHTTP
- SSL證書轉PEM格式 – HTTPS SSL 教程HTTP
- SSL證書格式轉換 – HTTPS SSL 教程HTTP
- 本地簽發ssl證書(https)HTTP
- 重新生成https證書HTTP
- SSL證書安裝指引教程 – HTTPS SSL 教程HTTP
- SSL證書申請問題 – HTTPS SSL 教程HTTP
- SSL證書是如何驗證的?驗證方式推薦
- 如何使用Docker生成SSL證書Docker
- curl 設定https 不驗證證書HTTP
- HTTPS加密過程和TLS證書驗證HTTP加密TLS
- HTTPS-自己生成數字證書HTTP
- 怎麼給網站配置SSL證書(https)網站HTTP
- 詳解如何給Tomcat配置Https/ssl證書TomcatHTTP
- nginx配置SSL證書實現https服務NginxHTTP
- WebService系列之Axis Https(SSL)證書校驗錯誤處理方法WebHTTP
- 【加解密】使用CFSSL生成證書並使用gRPC驗證證書解密RPC
- acme.sh 生成免費 ssl 證書ACM
- 使用OpenSSL生成自簽名SSL證書
- 哪些IP SSL證書支援IP地址https加密呢?HTTP加密
- 如何區分SSL證書和國密SSL證書
- 關於SSL證書之證書鏈
- 使用nslookup檢視SSL安全證書域名驗證資訊
- 申請SSL證書如何進行操作DNS域名驗證DNS
- 如何申請SSL證書以及SSL證書的費用
- 免費SSL證書包括DigiCert SSL證書可選嗎?
- 伺服器配置ssl證書支援蘋果ATS方法 – HTTPS SSL 教程伺服器蘋果HTTP
- IIS6 多域名證書安裝 – HTTPS SSL 教程HTTP
- SSL證書是什麼?HTTP和HTTPS的區別HTTP
- phpStudy安裝ssl證照 – HTTPS SSL 教程PHPHTTP
- 推薦|免費ssl萬用字元證書https萬用字元證書平臺,價效比超高的證書字元HTTP
- ssl證書下載與安裝 – 如何下載ssl證書
- 免費SSL證書和付費SSL證書的區別
- SSL證書的分類有哪些?如何選擇SSL證書?
- 付費SSL證書和免費SSL證書的區別