列印

【教學】在 AppServ 安裝 mod_ssl (Apache 2 版本)

本主題由 Linux0911 於 2007-9-1 12:41 PM 置頂 本主題被作者加入到個人文集中

【教學】在 AppServ 安裝 mod_ssl (Apache 2 版本)

伺服器測試環境:
Apache 2.0.59 + php 4.4.7


不過在此之前你必須先 Download 下列檔案:

1. Apache_2.0.59-Openssl_0.9.8b-Win32.zip

2. Openssl-0.9.8b-Win32.zip

3. openssl.cnf



開始安裝 mod_ssl

1. 先到右下角工作列圖示 Apache Monitor 先 STOP Apache


2. 解壓縮 Apache_2.0.59-Openssl_0.9.8b-Win32.zip (放桌面就好了)

將裡面的
./Apache_2.0.59-Openssl_0.9.8d-Win32/bin/Apache.exe
./Apache_2.0.59-Openssl_0.9.8d-Win32/bin/ssleay32.dll
./Apache_2.0.59-Openssl_0.9.8d-Win32/bin/libeay32.dll
3 個檔案複製到 X:/AppServ/Apache2/bin/ 裡面, 取代 Apache.exe



./Apache_2.0.59-Openssl_0.9.8d-Win32/conf/ssl.conf
複製到 X:/AppServ/Apache2/conf/ 裡面


3. 開啟 X:/AppServ/Apache2/conf/ssl.conf

找到
引用:
#   General setup for the virtual host
DocumentRoot "你的網頁根目錄 可以找 httpd.conf 下的 DocumentRoot"
ServerName 你的 domain name:443
ServerAdmin 你的 email
ErrorLog logs/error_log
TransferLog logs/access_log
修改一下你的網站資料




4. 接下來我們要產生 SSL連線(HTTPS)時所需要加密的 key 及身份驗證用的 CA。

首先,找個地方解開 Openssl-0.9.8b-Win32.zip

比方說 D:\OpenSSL ,接著再把 openssl.cnf 放到該目錄下,並且找到下列地方將它修改成:
複製內容到剪貼簿
代碼:
dir = ssl
certs = $dir\\certs
crl_dir = $dir\\crl
database = $dir\\index.txt
new_certs_dir = $dir
certificate = $dir\\cacert.pem
serial = $dir\\serial
crl = $dir\\crl.pem
private_key = $dir\\privkey.pem
RANDFILE = $dir\\privkey.rnd
如果你無法開啟 openssl.cnf, 先開啟 UltraEdit 或是新增記事本, 將 openssl.cnf 拉到裡面就可以了

還有別忘了把這個檔案裡的 x509extensions 這一行在開頭加上 # 把它註解掉。



5. 然後在 D:\OpenSSL 目錄下建立一個 ssl 資料夾,

在裡面新增兩個檔案:
index.txt
serial

index.txt 讓它保留空白即可,然後 serial 檔案裡打入 01 。


6. 然後在命令列模式下(「開始」->「執行」打 cmd,然後用 cd 指令切到 D:\OpenSSL)依序輸入下列指令:

產生 CA private key,它會要求你輸入密碼
openssl genrsa -des3 -out ssl/ca.key 1024

產生 CA require cert,照著它的說明填入對應資料
openssl req -config openssl.cnf -new -key ssl/ca.key -out ssl/ca.csr

產生 CA public cert
openssl x509 -days 3650 -req -signkey ssl/ca.key -in ssl/ca.csr -out ssl/ca.crt

產生 Server private key
openSSL genrsa -out ssl/server.key 1024

產生 Server require cert,這裡跟上面填入相同的資料
openssl req -config openssl.cnf -new -key ssl/server.key -out ssl/server.csr

產生 Server public key
openssl ca -config openssl.cnf -days 3650 -cert ssl/ca.crt -keyfile ssl/ca.key -in ssl/server.csr -out ssl/server.crt

如果沒有錯誤訊息的話,那在你的 D:\OpenSSL\ssl 資料夾下應該至少會有
ca.crt
server.crt
server.key
這三個檔案(確定它們不是 0 byte)。


7. 然後在 X:/AppServ/Apache2/conf/ 資料夾底下建立兩個資料夾
ssl.crt
ssl.key

然後把
ca.crt
server.crt
放到 X:/AppServ/Apache2/conf/ssl.crt/ 目錄下

而 server.key 放到 X:/AppServ/Apache2/conf/ssl.key/ 目錄下。



8. 檢視一下 X:/AppServ/Apache2/conf/ssl.conf 檔案裡是不是有這幾行:

SSLCertificateFile conf/ssl.crt/server.crt
SSLCertificateKeyFile conf/ssl.key/server.key
SSLCertificateChainFile conf/ssl.crt/ca.crt


9. 然後把 ssl.conf 裡的 <ifdefine SSL> 及 </ifdefine> 註解掉,

前面加上 # 號即可

這就要看你要不要再去 httpd.conf 裡 define SSL 囉。

如果你很順利作到這裡

那就可以重新啟動 apache 的服務,然後試試看能不能用 https 連接到你的網頁伺服器吧!

看看是否已加載 mod_ssl, 在網站目錄建立一個空的資料夾打入網址

應該會出現
引用:
Apache/2.0.59 (Win32) mod_ssl/2.0.59 OpenSSL/0.9.8d PHP/4.4.7 Server at linux0911.no-ip.info Port 80
如果你的 Apache 再重新啟動的過程出現

The requested operation has failed

可能是 Apache Port 衝到, 重新啟動電腦看看, 應該就可以解決了~

或是防火牆擋住了, 給個 rule 給它便可~



10. 先試試 http://你的網址:443

是不是一片空白而非無法顯示網頁

然後再到 https://你的網址

是不是跟 http 一樣可以正常瀏覽呢?

恭喜你大功告成

最快的測試方式就是到你的 phpMyAdmin

https://你的網址/phpMyAdmin/



出現憑證就是成功了~



參考資料來源:Windows 下安裝設定 Apache2 + PHP5 + mod_ssl
參考資料來源:The Apache + SSL on Win32 HOWTO
附件: 您所在的用戶組無法下載或查看附件
Hack 安裝錯誤, 80% 來自粗心, 請專心安裝
Linux0911 打造您的個性論壇

本人現在忙於研究所, 沒多的時間管論壇, 有問題別發 pm 給我, 謝謝~
Linux0911 Forum © 2004-2009 All Rights Reserved.

TOP

請問這個是要做啥用的????



Linux0911 Forum © 2004-2009 All Rights Reserved.

TOP

登錄資訊加密

像是購物網站、信用卡、網路 ATM 等

將 submit 的資訊加密以防盜

more info:
http://www.books.com.tw/data/qanda/security.htm
Hack 安裝錯誤, 80% 來自粗心, 請專心安裝
Linux0911 打造您的個性論壇

本人現在忙於研究所, 沒多的時間管論壇, 有問題別發 pm 給我, 謝謝~
Linux0911 Forum © 2004-2009 All Rights Reserved.

TOP

這幾天在嘗試在 Appserv v2.5.9 上加裝 SSL 機制
不過很遺憾此篇文章所需下載檔案的第 2 點已無法連結
希望站長或其它有架設成功的先進們可以幫忙補檔案
先謝過!
Linux0911 Forum © 2004-2009 All Rights Reserved.

TOP

http://hunter.campbus.com/ 網站掛了...

找找看有沒有人有保留, 我自己都沒保留這個檔案
Hack 安裝錯誤, 80% 來自粗心, 請專心安裝
Linux0911 打造您的個性論壇

本人現在忙於研究所, 沒多的時間管論壇, 有問題別發 pm 給我, 謝謝~
Linux0911 Forum © 2004-2009 All Rights Reserved.

TOP



論壇聲明
  • 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
    如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
    請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!
最佳瀏覽解析度:不低於 1024 (最佳 1280 以上).(支援 IE 7, Mozilla Firefox, Safari, Chrome)
The Best Surfing Resolution: No Lower than 1024 (Best: above 1280).(IE 7, Mozilla Firefox, Safari, Chrome Supported)