製作目的
自從上次發生被駭事件後,覺得網路安全防護真的是很重要,所以針對目前,公司有使用的網路服務,進行通訊加密作業。

要進行加密作業,必須先做好SSL憑證,在通訊的兩端把資料用公鑰做加密,再由接受端,用私鑰做解密的作業。

基本上 HTTP / SMTP / POP3 / FTP / IMAP 目前都可以支援SSL 的加密作業,所以就針對目前公司在用的服務,直接做一個SSL憑證給這些服務用即可。

環境說明
使用虛擬機來建立SSL 憑證
CentOS 5.4 X86-64 / 20G hdd / RAM 4G / CPU 4
openssl 0.98e.12.el5_4.1
使用root 帳號

設定OpenSSL 設定檔的位置

#mkdir /etc/ssl
#cp /etc/pki/tls/openssl.cnf /etc/ssl/.
#cd /etc/ssl
#mkdir private
#mkdir certs
#mkdir crl
#mkdir newcerts
#touch index.txt
#export OPENSSL_CONF="/etc/ssl/openssl.cnf"

然後修改 /etc/ssl/openssl.cnf ,把這一行
dir = ../../CA # Where everything is kept
改成這樣
dir = /etc/ssl # Where everything is kept
countryName_default = GB 改為 TW

把 OpenSSL 設定檔的位置加進 .bashrc 中

#echo "export OPENSSL_CONF=\"/etc/ssl/openssl.cnf\"" >> ~/.bashrc

產生亂數的檔案

#openssl rand 1024 > /etc/ssl/private/.rand
#chmod og-rwx /etc/ssl/private/.rand

以上準備好後,可以開始製作Root CA 了。

製作Root CA
#退出 shell 重新登入root
我們要做的Root CA 為nuface.ca ,如果之前有做過的話,現在再做一次,之前簽的憑證都會失效。

此時必須為最高層認證中心的 Private Key 設定一個適當的密碼,以後在用這把Private Key簽發其它憑證時,都需要用到這個密碼。

#openssl genrsa -des3 -out /etc/ssl/private/nuface.ca.key.pem 2048
#chmod og-rwx /etc/ssl/private/nuface.ca.key.pem

接著填寫憑證申請
跟誰申請?因為是Root CA ,沒有上級了,所以就是跟自己申請。

#openssl req -new -key /etc/ssl/private/nuface.ca.key.pem -out /tmp/nuface.ca.req.pem

填入資料

Country Name (2 letter code) [TW]:
State or Province Name (full name) [Taiwan]:
Locality Name (eg, city) [Newbury]:Taipei
Organization Name (eg, company) [My Company Ltd]:nuface
Organizational Unit Name (eg, section) []:CA
Common Name (eg, your name or your server's hostname) []:ca.nuface.tw
Email Address []:admin@nuface.tw

自己給自己簽名

#openssl x509 -req -days 7305 -sha1 \
-extfile /etc/ssl/openssl.cnf -extensions v3_ca \
-signkey /etc/ssl/private/nuface.ca.key.pem \
-in /tmp/nuface.ca.req.pem -out /etc/ssl/certs/nuface.ca.crt.pem

刪除憑證申請書

#rm -f /tmp/nuface.ca.req.pem

保護 nuface.ca.key.pem

#chmod 0400 /etc/ssl/private/nuface.ca.key.pem

Root CA搞定後,即可使用這個Root CA 簽發其它的憑證。

製作伺服器憑證
接著我們來製作blog.nuface.tw 的SSL憑證。

#openssl genrsa -out /etc/ssl/private/blog.nuface.key.pem 2048
#chmod og-rwx /etc/ssl/private/blog.nuface.key.pem

填寫憑證申請書,向nuface Root CA 做申請。

#openssl req -new -key /etc/ssl/private/blog.nuface.key.pem -out /tmp/blog.nuface.req.pem

填入資料

Country Name (2 letter code) [TW]:
State or Province Name (full name) [Taiwan]:
Locality Name (eg, city) [Newbury]:Taipei
Organization Name (eg, company) [My Company Ltd]:nuface
Organizational Unit Name (eg, section) []:blog
Common Name (eg, your name or your server's hostname) []:blog.nuface.tw
Email Address []:admin@blog.nuface.tw

用最高層認證中心(Root CA)簽發憑證

#openssl x509 -req -days 3650 -sha1 \
-extfile /etc/ssl/openssl.cnf -extensions v3_req \
-CA /etc/ssl/certs/nuface.ca.crt.pem -CAkey /etc/ssl/private/nuface.ca.key.pem \
-CAserial /etc/ssl/nuface.ca.srl -CAcreateserial \
-in /tmp/blog.nuface.req.pem -out /etc/ssl/certs/blog.nuface.crt.pem

刪除憑證申請書

#rm -f /tmp/blog.nuface.req.pem

保護 blog.nuface.key.pem

#chmod 0400 /etc/ssl/private/blog.nuface.key.pem

以上為SSL X.509憑證 的製作 。

日期:2010/03/08 | 留言:5 個 | 作者:Rico | 瀏覽:
分類:MIS易筋經,網路篇
標籤:, ,
  1. 目前還沒有留言!
  1. |
    2010/03/16 at 17:24:26 | 1

    […] 已經完成的作業 如何製作 SSL X.509憑證 […]

  2. |
    2010/03/18 at 21:45:31 | 2

    […] 補上安裝的資料,請參考 如何製作 SSL X.509憑證 各項網路服務 + SSL 應用 日期:2010/02/23 | 留言:2 個 | 作者:Rico | […]

  3. |
    2010/04/01 at 10:40:19 | 3

    […] 本集重點在設定Certificate Authority (CA) 。要進入設定OpenVPN的第一步是,建立PKI(公鑰架構),部份相關的基礎知識,可以參考這篇 如何製作 SSL X.509憑證。 […]

  4. |
    2010/09/30 at 15:59:06 | 4

    […] 飄狂山莊 瑪奇、LUNA、工作筆記  30 Sep 2010 @ 3:16 PM   引用-紐菲斯的部落格-製作SSL X.509憑證  Amplify’d from blog.nuface.tw […]

  5. |
    2017/06/29 at 18:40:54 | 5

    […] 憑證時,有提過,可以參考這篇。 在這個頁面Order Type 是 New […]

*

Copyright -0001 紐菲斯的部落格