Apache及openssl配置https詳解

首先搭建好Apache服務器,詳見:https://blog.csdn.net/weixin_40748006/article/details/106840924

一、使用openssl生成私鑰及證書

1、生成私鑰,默認使用rsa算法,不需要密碼

openssl genrsa -out rsa1024.key 1024

注意在使用下面des3算法時會需要輸入密碼,有密碼的私鑰添加apache,服務是起不來的

openssl genrsa -des3 -out c:\des3.key 2048

-des3是算法,1024/2048是保密強度

2、創建證書籤名請求CSR文件

openssl req -new -key rsa1024.key -out rsa1024.csr

注意:域名一定要和Apache服務器裏的ServerName保持一致,否則啓動服務器時會報錯。

郵箱地址、密碼等可以不用填寫

3、生成CA證書

openssl x509 -req -days 365 -in rsa1024.csr -signkey rsa1024.key -out rsa1024.crt

 證書生成完畢!

二、Apache https服務器搭建

1、將證書私鑰放入Apache目錄下

我在C:\Apache24\conf\下創建了一個cert文件夾放入了證書

2、配置http-ssl.conf文件

在C:\Apache24\conf\extra目錄下找到http-ssl.conf文件,找到以下內容,將前面#去掉。修改內容。以下字段值在文件裏都可以找到,直接修改即可,無需再添加

SSLEngine on

SSLCertificateFile "${SRVROOT}/conf/cert/rsa1024.crt"

SSLCertificateKeyFile "${SRVROOT}/conf/cert/rsa1024.key"

#SSLCertificateChainFile "${SRVROOT}/conf/server-ca.crt"  #這個我暫未使用

DocumentRoot "${SRVROOT}/htdocs"

ServerName www.wuxj.com:443       #注意這個域名一定要跟證書裏的域名設置的一樣,否則會報錯

SSLProtocol  TLSv1.1     #apache支持的協議,可以配置TLSv1.1 TLSv1.2 TLSv1.3,可以不修改用默認的

SSLCipherSuite AES256-SHA       #加密套件配置,支持多種加密套件,可以用默認的不修改

3、配置httpd.conf文件

將以下內容的#去掉

Include conf/extra/httpd-ssl.conf

LoadModule ssl_module modules/mod_ssl.so

LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

LoadModule socache_dbm_module modules/mod_socache_dbm.so

4、重啓apache服務,即可配置完成

5、驗證https服務,可以正常訪問

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章