windows下安裝apache並配置ssl過程
步驟1:配置 APACHE以支援SSL
找到下面兩行去掉前面的註釋 #
LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf
步驟2: 為網站伺服器生成證書及私鑰檔案
C:\Program Files\Apache Software Foundation\Apache2.2\bin>openssl genrsa -out server.key 1024
生成一個server.key
步驟3:生成簽署申請
C:\Program Files\Apache Software Foundation\Apache2.2\bin>openssl req -new -out server.csr -key server.key -config ..\conf\openssl.cnf
此時生成簽署檔案 SERVER.CSR
步驟4:使用OPENSSL生成CA私鑰
C:\Program Files\Apache Software Foundation\Apache2.2\bin>openssl genrsa -out ca.key 1024
多出CA.key檔案
步驟5:利用CA的私鑰產生CA的自簽署證書
C:\Program Files\Apache Software Foundation\Apache2.2\bin>openssl req -new -x509 -days 365 -key ca.key -out ca.crt -config ..\conf\openssl.cnf
步驟6:在bin目錄下新建demoCA目錄,在demoCA下新建index.txt,newcerts,serial 目錄結構如下
注意:Common name 跟 conf\openssl.cnf 中的ServerName相同
demoCA
|--index.txt(文字,內容為空)
|--newcerts(資料夾)
|--serial(文字,內容為 01)
步驟7:準備為網站伺服器簽署證書
C:\Program Files\Apache Software Foundation\Apache2.2\bin>openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config ..\conf\openssl.cnf
生成 server.crt檔案
步驟8:將 server.crt server.key複製到 conf資料夾下
------------------配置ssl常見問題---------------------
win7系統64位在配置過程中,在重啟apache時可能會出現問題
問題1:apache重啟失敗,報錯資訊Syntax error on line 62 of C:/Program Files (x86)/Apache Software Foundation/Apache2.2/conf/extra/httpd-ssl.conf:
SSLSessionCache: Invalid argument: size has to be >= 8192 bytes
解決辦法:
將conf\extra\httpd-ssl.conf中61-63行修改成下面這樣即可SSLSessionCache "dbm:C:/Program Files (x86)/Apache Software Foundation/Apache2.2/logs/ssl_scache"
# SSLSessionCache "shmcb:C:/Program Files (x86)/Apache Software Foundation/Apache2.2/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300