一、 安裝准備
1. 安裝Openssl
要使Apache支持SSL,需要首先安裝Openssl支持。這裡使用的是openssl-0.9.8k.tar.gz
下載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
從http://httpd.apache.org/下載httpd源代碼,這裡使用的是httpd2.2.22;
./configure --prefix=/usr/local/httpd2.2.22 --enable-so --enable-ssl --with-ssl=/usr/local/ssl --enable-mods-shared=all //配置安裝。推薦動態編譯模塊
make && make install
動態編譯Apache模塊,便於模塊的加載管理。Apache 將被安裝到/usr/local/apache
二、 生成證書
為了快速搭建好可用的https服務器,需要在/usr/local/httpd2.2.22/conf/目錄下
(也可以在別的目錄下生成,將生成後的文件拷貝到/usr/local/httpd2.2.22/conf/目錄下)
依次運行以下命令:
1. openssl req -new -text -out server.req
2. openssl rsa -in privkey.pem -out server.key
3. openssl req -x509 -in server.req -text -key server.key -out server.crt
具體的可以參考openssl文檔;
三、 Apache 的配置
打開apache安裝目錄下conf目錄中的httpd.conf文件,找到
#LoadModule ssl_module modules/mod_ssl.so
刪除行首的配置語句注釋符號“#”
保存退出。
打開apache安裝目錄下conf目錄中的ssl.conf文件,找到
在配置文件中查找以下配置語句
SSLCertificateFile conf/ssl.crt/server.crt 將服務器證書配置到該路徑下
SSLCertificateKeyFile conf/ssl.key/server.key 將服務器證書私鑰配置到該路徑下
#SSLCertificateChainFile conf/ssl.crt/ca.crt 刪除行首的“#”號注釋符,並將中級CA證書intermediate.crt配置到該路徑下
保存退出,並重啟Apache。重啟方式:
進入Apache安裝目錄下的bin目錄,運行如下命令
./apachectl -k -stop
./apachectl start
通過https方式訪問您的站點,測試站點證書的安裝配置。
此時即可以通過http和https訪問搭建好的服務器;
.