原來做的一個金融軟件項目, 部署到生產環境後,客戶要求使用SSL協議保證數據安全性(後來分析實際用處不大),在此整理了一些SSL基本概念
和不同服務器(weblogic,websphere,apache,)的ssl配置以及自建CA中心生成證書
--第四篇:自建CA中心--
第四篇也使用直接貼入word格式吧,省事了.. : )
1 自建CA中心
CA中心
1 生成CA自己的私鑰
2 生成CA(使用私鑰)自簽名的證書(x509格式,這個證書也稱爲根證書<root ca>)
3 使用腳本對需要證書的機構提交的CSR進行簽名
CA中間機構
1,生成自己的私鑰
2,生成請求證書CSR發給CA根中心,然後得到CA簽過名的證書(公鑰)
3,用自己的私鑰簽名?(裏面應包括根CA的證書鏈啊)
客戶(即需要部署證書的Web Server)
1 生成私鑰
2 生成CSR,其中包括自己的公鑰
3 收到CA簽名後的CSR返回(經ca簽名的證書)
4 將CA證書(root ca),私鑰以及經ca簽名的證書部署在機構
1.1 使用OpenSSL自建CA中心(注:需要在Linux系統中)
假設我們要做的最高層認證中心叫做 myrootca
下面步驟在WINDOWS中測試時到8.1.2步中出現:
Unable to load config info from /usr/local/ssl/openssl.cnf 的提示
1.1.1 製作 Private Key (及 Public Key )
我們做一個新的 Private Key 。 Public Key 可由 Private Key 推得,所以不用特別去做。
請爲最高層認證中心的 Private Key 設定一個適當的密碼:123456
製作 RSA[7] Private Key
openssl genrsa -des3 -out myrootca.key.pem 2048
1.1.2 填寫憑證申請書
證申請書,是把你的資料,和這個 Public Key 夾在一起,以便認證中心審覈,籤上簽名用的。所以這個步驟,會問你這個 Key 的相關資料,包括國家、城市、單位名稱、部門名稱、憑證名稱、聯絡人的信箱,以及申請的效期等等。請一一填寫
若你要直接用最高層認證中心來直接當憑證用,憑證名稱 (Common Name) 請用伺服器的全名 (
www.abc.com)(一般不會這樣用)
填寫憑證申請書
openssl req -new –key myrootca.key.pem -out myrootca.req.pem
1.1.3 簽發證書>>即自簽名證書
自己給自己簽名:
openssl x509 -req -days 7305 -sha1
-extfile openssl.cnf -extensions v3_ca
-signkey myrootca.key.pem
-in myrootca.req.pem -out myrootca.crt.pem
這樣就好了,
Private Key 在 myrootca.key.pem, 要小心存好保護
自己籤Public Key憑證在 myrootca.crt.pem
注:另外可以使用OpenVPN來製作CA中心
簡介(實際使用時到可以到網上去找具體資料配置):
openvpn是一個虛擬個人網絡製作工具,他能完美的在win(linux,BSD也行)下製作根、服務器、客戶端證書。 安裝完畢後,進到openvpn的easy-rsa目錄:其原理實際也是通過OPENSSL來創建密鑰和證書的