Linux環境下生成openssl證書註意細節介紹
一、環境:CentOS7,Openssl1.1.1k。
二、概念:
根證書:是生成服務器證書和客戶端證書的基礎,也可以叫自簽發證書,即CA證書
服務器證書:由根證書簽發,配置在服務器。
客戶端證書:由根證書簽發,配置在客戶端。也可以配置在web服務器,安裝在瀏覽器。
對稱加密:用一個密碼加密文件,然後解密也用同樣的密碼。
非對稱加密:加密用的一個密碼,而解密用另外一組密碼。包括以下兩種情況:
用於加密數據時:公鑰加密,私鑰解密
用於文件簽名時:私鑰簽名,公鑰驗簽
三、步驟:
1、查看openssl的配置文件openssl.cnf
vim /etc/pki/tls/openssl.cnf
2、創建為根證書CA所需的目錄及文件
cd /etc/pki/CA #創建配置文件信息中所需的目錄及文件 mkdir -pv {certs,crl,newcerts,private} touch {serial,index.txt}
3、指明證書的開始編號
echo 01 >> serial
4、生成根證書
# 生成CA私鑰(ca.key) openssl genrsa -des3 -out ca.key 2048 # 生成CA證書簽名請求(ca.csr) openssl req -new -key ca.key -out ca.csr # 生成自簽名CA證書(ca.cert) openssl x509 -req -days 3650 -in ca.csr -signkey ca.key -out ca.crt
5、生成服務器證書
# 生成服務端私鑰(server.key) openssl genrsa -des3 -out server.key 2048 # 生成服務端證書簽名請求(server.csr) openssl req -new -key server.key -out server.csr # 使用ca證書簽署服務端csr以生成服務端證書(server.cert) openssl ca -days 3650 -in server.csr -out server.crt -cert ca.crt -keyfile ca.key
6、生成客戶端證書
# 生成客戶端私鑰(client.key) openssl genrsa -des3 -out client.key 2048 # 生成客戶端證書簽名請求(client.csr) openssl req -new -key client.key -out client.csr # 使用ca證書簽署客戶端csr以生成客戶端證書(client.cert) openssl ca -days 3650 -in client.csr -out client.crt -cert ca.crt -keyfile ca.key
7、查看證書內容
openssl x509 -in server.crt -noout -text
8、將crt轉換為pem
openssl x509 -in ca.crt -out ca.pem -outform PEM openssl x509 -in server.crt -out server.pem -outform PEM openssl x509 -in client.crt -out client.pem -outform PEM
9、剝離私鑰key的密碼
openssl rsa -in server.key -out serverkey.pem openssl rsa -in client.key -out clientkey.pem
生成後的證書列表:
到此這篇關於Linux環境下生成openssl證書註意細節介紹的文章就介紹到這瞭,更多相關Linux生成openssl證書內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Docker開啟安全的TLS遠程連接訪問方式
- docker remote api一鍵TLS加密的實現
- Docker開啟遠程連接並實現安全通信詳解
- 使用Go實現TLS服務器和客戶端的示例
- 使用openssl實現私有CA的搭建和證書的頒發