自娛自樂apache
簡單來講,ssl協議是工做在傳輸層和應用層間用於保護應用層數據的安全協議。關於ssl協議的細節參閱《ssl & tls》,在此主要總結下如何開啓Apache的ssl功能。瀏覽器
/etc/apache2/目錄下有兩個子目錄:sites-available、sites-enabled。能夠發現sites-enabled中的文件都是到sites-available的軟鏈接,其中sites-avaliable中存放的都是真正的配置文件,每個配置文件對應一個「虛擬主機」。能夠理解爲在一個IP地址上構建多個網站,每一個網站對應一個配置文件。安全
一、 爲啓動ssl功能,首先第一步是加載apache ssl模塊:服務器
a2enmod sslide
二、用openssl分別生成CA證書、服務器證書,用CA給服務器簽名,並將CA證書導入到瀏覽器中。
網站
生成根祕鑰:spa
Openssl genrsa –des3 –out rootca.key 1024server
根自簽名證書,目的爲了給其它證書籤名和根證書之間信任關係:ssl
Openssl req –new –x509 –days 3650 –key rootca.key –out rootca.crtopenssl
生成服務器證書密鑰:
Openssl genrsa –des3 –out server.key 1024
生成服務器根證書請求:
Openssl req –new –key server.key –out server.csr
生成服務器證書,並由根證書籤名:
Openssl ca –in server.csr –outserver.crt –cert rootca.crt –keyfile rootca.key –config openssl.cnf
三、修改sites-avaliable中的default-ssl文件,將其中服務器證書和密鑰存放位置改掉
四、ssl站點設爲可運行
a2ensite ssl
五、重啓apache,在瀏覽器中輸入https://127.0.0.1,便可實現經過ssl訪問服務器,抓包能夠發現本來是明文的部分變成了亂碼。