Linux下設定Apache支援Https服務
HTTPS的主要作用:
1)建立一個資訊保安通道,來保證資料傳輸的安全性
2)確認網站的真實性
HTTPS與HTTP的區別:
1)HTTPS協議需要到ca申請證書,免費證書較少
2)HTTP是超文字傳輸協議,資訊是明文傳輸,HTTPS則是具有安全性的SSL加密傳輸協議
3)HTTPS與HTTP使用的是完全不同的連線方式,用的埠也不一樣,前者是443,後者是80
4)HTTP的連線很簡單,是無狀態的;HTTPS協議是由SSL+HTTP協議構建的可 進行加密傳輸、身份認證的網路協議,比HTTP協議更安全
需要支援HTTPS的WEB伺服器要做的第一件事情就是獲取數字證書,三種方式:
1)自簽名證書
2)認證供應商
3)知名證書頒發機構購買
【以自簽名證書為例】
1、生成證書
1)安裝OpenSSL
yum install mod_ssl openssl
2)生成2048位的加密祕鑰
openssl genrsa -out ca.key 2048
3)生成伺服器公鑰(CSR)
openssl req -new -key ca.key -out ca.csr
4)生成型別為X509的自簽名證書
openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt
2、配置apache http.conf檔案,建立一個SSL的虛擬站點
#監聽443埠
Listen 443
<VirtualHost _default_:443>
#基礎配置
#說明此虛擬站點使用HTTPS通訊
SSLEngine on
#假設證書相關檔案存放路徑為/opt/apache
SSLCertificateFile /opt/apache/ca.crt
SSLCertificateKeyFile /opt/apache/ca.key
SSLCertificateChainFile
/opt/apache/ca.crt
</VirtualHost>
3、重啟生效
service httpd restart