2012年8月23日 星期四

使用 OpenSSL 建立憑證 (Windows)



必須先安裝Apache,請參考這篇

首先切換到Apache的bin目錄:
cd /d C:\Apache24\bin

使用OpenSSL建立『server.key』私鑰檔案,並輸入自訂短密碼:
openssl genrsa -des3 -out server.key 2048

使用私鑰去建立『server.csr』憑證請求檔:
openssl req -new -key server.key -out server.csr -config ..\conf\openssl.cnf

在建立憑證請求檔時會詢問相關資訊,下面為參考設定範例:
Country Name (2 letter code) [AU]:TW
State or Province Name (full name) [Some-State]:Taiwan
Locality Name (eg, city) []:Chiayi Country
Organization Name (eg, company) [Internet Widgits Pty Ltd]:National Chung Cheng University
Organizational Unit Name (eg, section) []:CADCAM
Common Name (e.g. server FQDN or YOUR name) []:cad.me.ccu.edu.tw
Email Address []:ccuboxy@cad.me.ccu.edu.tw

使用憑證請求檔及私鑰檔去建立3650天的X.509格式憑證的CRT憑證檔:
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt

以上步驟完成後會得到共三個檔案『server.key』、『server.csr』、『server.crt』
請將三個檔案移駕到『C:\Apache24\conf』目錄下。

到『C:\Apache24\conf』打開『httpd.conf』檔案找到以下兩句並取消註解:
LoadModule ssl_module modules/mod_ssl.so
Include ./conf/extra/httpd-ssl.conf

到『C:\Apache24\conf\extra』打開『httpd-ssl.conf』檔案找到『SSLSessionCache』並註解掉:
#SSLSessionCache        "shmcb:c:/Apache24/logs/ssl_scache(512000)"

開啟瀏覽器進入『https://localhost/』測試是否成功。

完成。



不支援Win32的問題解決方法:
1、複製 server.key 為 server.key.org
2、對 server.key.org 解密 openssl rsa -in server.key.org -out server.key 輸入密碼解密成功
3、打開 httpd-ssl.conf 找到 SSLPassPhraseDialog builtin 在前面加上#

沒有留言:

張貼留言