首頁 >web前端 >前端問答 >Windows下Apache配置SSL以支援https及出錯的解決方法

Windows下Apache配置SSL以支援https及出錯的解決方法

伊谢尔伦
伊谢尔伦原創
2016-11-25 14:38:153001瀏覽

SSL

SSL憑證透過在客戶端瀏覽器和Web伺服器之間建立一條SSL安全通道(Secure socket layer(SSL)安全協定是由Netscape Communication公司設計開發。此安全協定主要用來提供對使用者和伺服器的認證;對傳送的資料進行加密和隱藏;確保資料在傳送中不會改變,即資料的完整性,現已成為該領域中全球化的標準。 WEB伺服器程式中,因此,只需安裝伺服器憑證就可以啟動該功能了)。即透過它可以啟動SSL協議,實現資料資訊在客戶端和伺服器之間的加密傳輸,可以防止資料資訊的外洩。保證了雙方傳遞資訊的安全性,而且使用者可以透過伺服器憑證驗證他所造訪的網站是否是真實可靠。

安全通訊端層 (SSL) 技術透過加密資訊和提供鑑權,保護您的網站安全。一份 SSL 憑證包括一個公用金鑰和一個私人金鑰。公用金鑰用於加密訊息,私用金鑰用於解譯加密的訊息。當瀏覽器指向一個安全域時,SSL 會同步確認伺服器和用戶端,並建立加密方式和一個唯一的會話金鑰。它們可以啟動一個保證訊息的隱私和完整性的安全會話。

首先要有一個主證書,然後用主證書來簽發伺服器證書和客戶證書,伺服器證書和客戶證書是平級關係,SSL所使用的證書可以自己生成,也可以透過一個商業性CA(如Verisign或Thawte)簽署證書。簽發證書的問題:如果使用的是商業證書,具體的簽署方法請查看相關銷售商的說明;如果是知己簽發的證書,可以使用openssl 自帶的CA.sh腳本工具。如果不為單獨的客戶端簽發證書,客戶端證書可以不用生成,客戶端與伺服器端使用相同的證書。

設定流程 

步驟一:安裝apache,使其支援SSL,並安裝php

1.安裝隨附SSL模組的apache,apache_2.2.8-win32-x86-openssl-0.9.8g

. apache以支援SSL:

1)開啟apache的設定檔conf/httpd.conf

LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf

去掉兩行前面的#

2)注意修改httpd-ssl.conf 檔案裡的兩個欄位:

SSLCertificateFile "C:/Apache2.2/conf/server.crt"
SSLCertificateKeyFile "C:/Apache2.2/conf/server.key"

3 .安裝php,整合apache和php(略)

步驟二:為網站伺服器產生憑證及私鑰檔案

1. 產生伺服器的私鑰

進入命令列:

D:\local\apache2\bin\openssl genrsa -out server.key 1024

在目前目錄下產生了一個server.key產生簽署申請

2. 產生簽署申請

D:\local\apache2\bin>openssl req -new –out server.csr -key server.key -config ..\conf\openssl.cnf

此時產生簽署文件server.csr。

可能會報錯:無法定位序數xxx於動態連結庫libeay32.dll,解決方法:將apache的bin目錄下的libeay32.dll檔案複製到c:windowssystem32下。

步驟三:透過CA為網站伺服器簽署憑證

1.產生CA私鑰

D:\local\apache2\bin\openssl genrsa  -out ca.key 1024

多出ca.key檔案

2.利用CA的私鑰產生CA的自簽署憑證

D:\local\apache2\bin\openssl req  -new -x509 -days 365 -key ca.key -out ca.crt  -config ..\conf\openssl.cnf

2.利用CA的私鑰產生CA的自簽署憑證

D:\local\apache2\bin\openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config ..\conf\openssl.cnf

輸入一些信息,注意Common Name為伺服器域名,如果在本機,為本機IP。

3.CA為網站伺服器簽署證書

127.0.0.1 localhost
127.0.0.1 www.icultivator.com

但此時會報錯,於是在當前目錄創建demoCA,裡面創建以下文件,index.txt,serial:serial內容為01,其他為空,以及文件夾newcert .再執行一遍,即可產生server.crt檔

步驟四:將  server.crt,server.key複製到apache的conf資料夾下,重啟apache

步驟五:設定windows

開啟C:WINDOWSsystem32dritcverse的etc檔:

修改為:

https://www.icultivator.com

步驟六:

在apache下建立網站。 訪問
rrreee

🎜🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn