首先產生crt
你必須先安裝openssl
輸入以下指令,產生server.csr

 

set OPENSSL_CONF=YourDrive:\xampp\apache\conf\openssl.cnf

set RANDFILE=C:\Temp\.rnd

openssl req -nodes -newkey rsa:2048 -keyout myserver.key -out server.csr



其中,這個myserver.key  非常的重要,一定要好好的保存,不然你的ssl 就沒用了

產生的server.csr 可以交給中華電信申請ssl 



購買完後,會收到三個檔案和一堆的廢話
如下

windows apache 安裝中華電信ssl



按照下面方式,將 PublicCA_64.crt 轉成 eCA_PublicCA.p7b 格式

windows apache 安裝中華電信ssl



windows apache 安裝中華電信ssl

windows apache 安裝中華電信ssl

 

 

 

windows apache 安裝中華電信ssl

 

 

windows apache 安裝中華電信ssl

windows apache 安裝中華電信ssl

 

出現以下憑證匯出精靈的畫面,請點選「確定」,即完成了 eCA 根憑證 及 PublicCA CA 憑證之憑證串鏈的取得

輸入以下指令

產生 pem檔

openssl pkcs7 -in eCA_PublicCA.p7b -inform DER -print_certs -out eCA_PublicCA.pem


然後,在 httpd.conf.  或  httpd-vhost.conf  或  ssl.conf

加入以下參數 (或是拿掉註解),其實在哪都可以,只是我個人的是有vhost, 並針對不起的host 有不同的ssl ,所以我選擇在vhost.conf裡加


SSLEngine on
SSLCertificateFile "E:/xampp/apache/conf/ssl.crt/ssl_xxx.crt"
SSLCertificateKeyFile "E:/xampp/apache/conf/ssl.key/myserver.key"
SSLCertificateChainFile "E:/xampp/apache/conf/ssl.crt/ssl_xxx.ca-bundle"


上面是路徑的範例,以下是說明

SSLCertificateFile "(這裡輸入是的「中華電信那一個唯一的一個亂數16位的英數的檔名)(你可以自己變更檔名為簡單一點的)"

SSLCertificateKeyFile "這裡是生成csr 的 key ,在文章一開始說到的很重要的 myserver.key "
SSLCertificateChainFile "這裡輸入的是剛剛產生的eCA_PublicCA.pem"

很重要!!!
eCA_PublicCA.pem  要變更副檔名為 crt 才能使用!!



如果在過程中你無法正常的啟動apach 

確認以下幾個東西

一、apache 的 ssl module 有沒有開啟或載入
二、有無安裝openssl
三、上述三個檔案的路徑檔名是否正確
四、你的crt , 跟 .key 跟 .pem   等的關係是否正確 ,是不是哪個檔案錯了
五、打開你的log 看一下哪裡有問題

 

創作者介紹
創作者 程式分享 的頭像
lrain5477

程式分享

lrain5477 發表在 痞客邦 留言(0) 人氣( 2 )