apache 配置https 支持ssl

1. 安裝openssl 
apache2.0 建議安裝0.9版本,我曾經試過2.0.59 對openssl-1.0編譯不過去
下載Openssl:http://www.openssl.org/source/
       tar -zxf openssl-0.9.8k.tar.gz    //解壓安裝包   
       cd openssl-0.9.8k                 //進入已經解壓的安裝包   
       ./config                          //配置安裝。推薦使用默認配置   
       make && make install              //編譯及安裝   
openssl默認將被安裝到/usr/local/ssl 


2. 讓apache支持ssl,編譯的時候,要指定ssl支持。
靜態或者動態
靜態方法即  --enable-ssl=static --with-ssl=/usr/local/ssl
動態方法  --enable-ssl=shared --with-ssl=/usr/local/ssl
其中第二種方法會在module/ 目錄下生成 mod_ssl.so 模塊,而靜態不會有,當然第二種方法也需要在httpd.conf 中加入
LoadModule ssl_module modules/mod_ssl.so   

3. 1    創建私鑰  
在創建證書請求之前,您需要首先生成服務器證書私鑰文件。  
cd /usr/local/ssl/bin                    //進入openssl安裝目錄  
openssl genrsa -out server.key 2048      //運行openssl命令,生成2048位長的私鑰server.key文件。如果您需要對 server.key 添加保護密碼,請使用 -des3 擴展命令。Windows環境下不支持加密格式私鑰,Linux環境下使用加密格式私鑰時,每次重啓Apache都需要您輸入該私鑰密碼(例:openssl genrsa -des3 -out server.key 2048)。 
cp server.key   /usr/local/apache/conf/ssl.key/
  
3.2    生成證書請求(CSR)文件   
openssl req -new -key server.key -out certreq.csr   
Country Name:                           //您所在國家的ISO標準代號,中國爲CN   
State or Province Name:                 //您單位所在地省/自治區/直轄市   
Locality Name:                          //您單位所在地的市/縣/區   
Organization Name:                      //您單位/機構/企業合法的名稱   
Organizational Unit Name:               //部門名稱   
Common Name:                            //通用名,例如:www.itrus.com.cn。此項必須與您訪問提供SSL服務的服務器時所應用的域名完全匹配。   
Email Address:                          //您的郵件地址,不必輸入,直接回車跳過   
"extra"attributes                        //以下信息不必輸入,回車跳過直到命令執行完畢。 
   
3.3    備份私鑰並提交證書請求   
請將證書請求文件certreq.csr提交給天威誠信,並備份保存證書私鑰文件server.key,等待證書的簽發。服務器證書密鑰對必須配對使用,私鑰文件丟失將導致證書不可用。 

4.安裝證書
4.1 獲取服務器證書中級CA證書   
爲保障服務器證書在客戶端的兼容性,服務器證書需要安裝兩張中級CA證書(不同品牌證書,可能只有一張中級證書)。   
從郵件中獲取中級CA證書:   
將證書籤發郵件中的從BEGIN到 END結束的兩張中級CA證書內容(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”)粘貼到同一個記事本等文本編輯器中,中間用回車換行分隔。修改文件擴展名,保存爲conf/ssl.crt/intermediatebundle.crt文件(如果只有一張中級證書,則只需要保存並安裝一張中級證書)。   
4.2 獲取EV服務器證書   
將證書籤發郵件中的從BEGIN到 END結束的服務器證書內容(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”) 粘貼到記事本等文本編輯器中,保存爲ssl.crt/server.crt文件 
   
4.3 apache的配置 2.0的配置
httpd.conf 中增加
Listen  443
NameVirtualHost *:443
<VirtualHost *:443>
    DocumentRoot "/data/web/www"
    ServerName aaa.com:443
    ErrorLog "logs/error.log"
    CustomLog "logs/access.log" combined
     <IfModule mod_ssl.c>
        SSLEngine on
        SSLCertificateFile /usr/local/apache/conf/ssl.crt/server.crt
        SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/server.key
        SSLCertificateChainFile /usr/local/apache/conf/ssl.crt/intermediatebundle.crt
    </IfModule>
</VirtualHost>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章