apache配置ssl


一、准備工作
安裝好 Apache + openssl
win32openssl 下載地址 http://slproweb.com/products/Win32OpenSSL.html,最好下載完整包(或者可以自己編譯openssl)
VC++ 2008安裝

二、生成CA證書

首先cmd命令進入{Apache}/bin目錄下
1、成網站服務器公鑰文件server.key
openssl genrsa -out server.key 1024

2、生成server.csr
openssl req -new -out server.csr -key server.key -config ..\conf\openssl.cnf
(此處的openssl.cnf在windows下顯示的是openssl 類型為快速撥號)

3、生成CA私鑰文件ca.key
openssl genrsa -out ca.key 1024

4、生成CA證書
openssl req -new -x509 -days 365 -key ca.key -out ca.crt -config ..\conf\openssl.cnf


三、生成服務端證書

在{Apache}/bin文件下面創建demoCA文件夾,並在demoCA文件夾里面創建newcerts文件夾、index.txt文件、serial文件,serial文件內容為01。

1、簽名以后的服務器證書
openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config ..\conf\openssl.cnf

2、把server.crt,server.key,ca.crt文件復制到{Apache}/conf文件夾下面


四、生成客戶端證書

1、創建客戶端私鑰
openssl genrsa -aes256 -passout pass:pldsec -out D:/Wamp/private/client.key.pem 2048

2、創建客戶端證書簽發請求
openssl req -passin pass:pldsec -new -key D:/Wamp/private/client.key.pem -out D:/Wamp/private/client.csr -subj '/C=CN/ST=SZ/L=SZ/O=pldsec/OU=pldsec/CN=192.168.1.203' -config D:/Wamp/Apache24/conf/openssl.cnf

3、利用CA根證書,簽發客戶端證書
openssl x509 -req -days 3650 -CA D:/Wamp/Apache24/conf/ca.crt -CAkey D:/Wamp/Apache24/bin/ca.key -CAcreateserial -in D:/Wamp/private/client.csr -out D:/Wamp/certificates/client.crt

4、將client.crt轉換為 .pfx 格式的證書
openssl pkcs12 -export -clcerts -inkey D:/Wamp/private/client.key.pem -in D:/Wamp/certificates/client.crt -out D:/Wamp/certificates/client.p12 -passin pass:pldsec -passout pass:pldsec

五、在httpd中配置雙向的HTTPS
1、編輯 httpd.conf,分別查找下面2行代碼,並去掉前面的#,(這里的前提是,在編譯httpd的時候,已經編譯了ssl模塊)
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so 
LoadModule socache_dbm_module modules/mod_socache_dbm.so 
LoadModule socache_memcache_module modules/mod_socache_memcache.so 
LoadModule ssl_module modules/mod_ssl.so

Include conf/extra/httpd-ssl.conf 

<IfModule ssl_module> 
SSLRandomSeed startup builtin 
SSLRandomSeed connect builtin 
</IfModule> 

2、編輯{Apache}/conf/extra/httpd-ssl.conf 
SSLEngine on 
SSLCertificateFile "d:/Wamp/Apache24/conf/server.crt" 
SSLCertificateKeyFile "d:/Wamp/Apache24/conf/server.key" 
SSLCACertificateFile "D:/Wamp/Apache24/conf/ca.crt" 
SSLVerifyClient require 
SSLVerifyDepth 10 
前3個開啟是單向的HTTPS認證,后面3個開啟是雙向的HTTPS認證

原文地址:https://www.cnblogs.com/rnckty/p/4097458.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM