openssl生成證書
大家都可以生成公鑰、私鑰對,無法確認公鑰對到底是誰的。 如果能夠確定公鑰到底是誰的,就不會有這個問題了。例如,如果收到“黑客”冒充“伺服器”發過來的公鑰,經過某種檢查,如果能夠發現這個公鑰不是“伺服器”的就好了。
為了解決這個問題,數字證書出現了,它可以解決我們上面的問題。先大概看下什麼是數字證書,一個證書包含下面的具體內容:
- 證書的釋出機構
- 證書的有效期
- 公鑰
- 證書所有者(Subject)
- 簽名所使用的演算法
- 指紋以及指紋演算法
1.安裝openssl 之後在/usr/lib/ssl目錄下(ubuntu系統,用whereis查下ssl目錄即可)下找到openssl.cnf,拷貝到工作目錄下。
2.工作目錄下新建demoCA資料夾,資料夾中新建檔案index.txt和serial,再建立一個newcerts的資料夾。在serial裡面新增字元01。
mkdir demoCA
cd demoCA
touch ./{serial, index.txt}
vi serial 新增01 :wq
生成證書過程:(注意以下過程都在工作目錄下進行,即/home/qing/ca,截圖為當時自己試驗時出現差錯,最後還要把生成的檔案移到工作目錄下)
1.生成伺服器端私鑰(key檔案)
openssl genrsa -des3 -out server.key 1024
此時輸入的密碼用於每次讀取私鑰檔案的口令,可以去除但是不推薦(openssl rsa -in server.key -out server.key)
2.生成CSR檔案(Certificate Signing Request),csr檔案經過ca簽名才能夠生成證書
openssl req -new -key server.key -out server.csr -config openssl.cnf
3.對客戶端進行相同操作生成key以及csr檔案
openssl genrsa -des3 -out client.key 1024
openssl req -new -key client.key -out client.csr -config openssl.cnf
4.自己做CA
openssl req -new -x509 -keyout ca.key -out ca.crt -config openssl.cnf
5.用自己生成的ca證書為server.csr和client.csr 簽名
openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config openssl.cnf
openssl ca -in client.csr -out client.crt -cert ca.crt -keyfile ca.key -config openssl.cnf
相關文章
- 使用OpenSSL生成證書
- openssl生成自簽名證書
- mac 上使用OpenSSL 生成RSA證書Mac
- 使用OpenSSL生成自簽名SSL證書
- 隨筆-openssl證書的生成和使用
- OpenSSL 生成 RootCA (根證書)並自簽署證書(支援 IP 地址)
- openssl 證書生成筆記(go 1.15版本以上)筆記Go
- https--OpenSSL生成root CA及簽發證書HTTP
- fabric-ca載入openssl生成的ecdsa標準證書
- 使用OpenSSL建立生成CA證書、伺服器、客戶端證書及金鑰伺服器客戶端
- 使用OpenSSL生成自簽名證書(IIS)搭建Https站點HTTP
- OPENSSL 製作 Ikev2證書
- openssl提取pfx證書金鑰對
- 通過OpenSSL來生成二進位制格式證書檔案(pfx和cer)
- ssl 生成證書
- 使用 OpenSSL 建立私有 CA:1 根證書
- 使用 OpenSSL 建立私有 CA:2 中間證書
- RSA的主場-證書籤名&OpenSSL演示
- 使用 openssl 命令列構建 CA 及證書命令列
- 生成https證書HTTP
- 記錄 openssl 證書驗證失敗的詭異問題
- 使用 OpenSSL 建立私有 CA:3 使用者證書
- openssl建立證書,非常詳細配置ssl+apacheApache
- SSL證書生成,完成HTTPS驗證HTTP
- 一個完整的類用來讀取OpenSSL生成的pem格式的x509證書
- OpenSSL 證書請求和自簽名命令 req 詳解
- 【加解密】使用CFSSL生成證書並使用gRPC驗證證書解密RPC
- 在Linux下如何根據域名自簽發OpenSSL證書與常用證書轉換Linux
- 線上生成ios證書的流程iOS
- 如何使用Docker生成SSL證書Docker
- 生成自簽名SSL證書
- 使用OpenSSL轉換X509 PEM與PFX證書
- Mac Store 證書籤名大清理及證書生成過程Mac
- mac下證書的生成與使用Mac
- acme.sh 生成免費 ssl 證書ACM
- HTTPS-自己生成數字證書HTTP
- openSSL生成公鑰和私鑰
- 基於Let's Encrypt生成免費證書-支援多域名泛域名證書