windows本地apache服务器开启ssl

SSl是爲Http傳輸提供安全的協議,經過證書認證來確保客戶端和網站服務器之間的數據是安全, 能夠經過apache自帶的openssl進行配置:

步驟以下:

1.安裝有openssl模板的apache,大多數都會有,判斷有沒有 只須要查看 apache\bin 下有沒有 openssl.exe 運行程序

 

2.配置 apache/conf/httpd.conf 文件,以下:

#LoadModule ssl_module modules/mod_ssl.so

#Include conf/extra/httpd-ssl.conf

  去除這兩行前的#,如果都没有,须手动添加上去

 

3.配置 apache/conf/extra/httpd-ssl.conf 文件,以下:

#本地配置ssl时不用监听443端口,下面的<VirtualHost *:443>设置了443就可以了
#Listen 443
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:${SRVROOT}/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300

<VirtualHost *:443>
DocumentRoot "D:/AppServ/www/kefu/public"
ServerName www.78kf.com:443
SSLEngine on
SSLCertificateFile "${SRVROOT}/conf/78kf.com/server.crt"
SSLCertificateKeyFile "${SRVROOT}/conf/78kf.com/server.key"
</VirtualHost>


4.生成服務器的私鑰
  打開cmd命令行 進入apache/bin目錄 執行下面命令, 在當前bin目錄下生成一個 server.key 私鑰文件:

  windows下从文件管理器打开apache24/bin文件夹,在文件管理器地址栏输入cmd, 就直接进入该文件下的命令行窗口了

openssl genrsa -out server.key 1024 

 

 

5.生成簽署申請

  在當前目錄下繼續執行下面命令 在當前bin目錄下生成一個 server.csr 簽署文件
  在输入命令后,openssl会询问你的国家地区机构名等信息,其余信息不想填可以直接回车
值得注意的一點是:Common Name信息必需要和是網站域名或是IP地址與httpd.conf中的serverName一致:

openssl req -new -out server.csr -key server.key -config ..\conf\openssl.cnf


6.生成CA私匙文件

  在當前目錄命令行下繼續執行命令 在當前bin目錄下生成一個 ca.key 私鑰文件:

openssl genrsa -out ca.key 1024

 

7.利用CA的私鑰產生CA的自簽署證書

  在當前目錄命令行下繼續執行 命令 在當前bin目錄下生成一個 ca.crt 自簽署證書

  該過程將填入簽署文件信息 如國家 省份 城市地區 機構組織等 值得注意的一點是:Common Name 信息必需要和是網站域名或是IP地址與httpd.conf中的serverName一致。(與步驟5一致)

openssl req -new -x509 -days 365 -key ca.key -out ca.crt -config ..\conf\openssl.cnf


8.CA爲網站服務器簽署證書

  在當前目錄命令行下繼續執行 命令 在當前bin目錄下生成一個 server.crt 簽署證書文件

   這裏執行命令時會報錯,解決方法在當前文件夾下(bin目錄)建立 demoCA 文件夾,

在其中建立2個文件和1個文件夾: index.txt空文件、內容爲01的無後綴名serial文件、 和 newcert空文件夾 便可,從新運行命令便不會有錯了

openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config ..\conf\openssl.cnf


9.移動文件

  將生成的 server.crt,server.key,ca.crt 三个文件複製到 步驟3中所配置的文件夾中
  如:D:\AppServ\Apache24\conf\78kf.com

 

10.配置httpd.conf和httpd-ssl.conf文件中的ServerName的訪問域名 或 IP地址, 重啓apache服務

  

11.打開IE,輸入https://域名或IP地址:443的時候會彈出一個驗證證書的地方點擊取消發現沒能成功,原來還要生成一個 .pfx 的證書並導入到IE中去。

  在當前目錄命令行下繼續執行 openssl pkcs12 -export -in ca.crt -inkey ca.key -out ca.pfx 在bin下面生成一個ca.pfx的文件,
  中間有個輸入密碼的過程,要記住這個密碼。打開IE瀏覽器-》工具-》Internet選項-》內容-》證書,按照提示導入,這裏要輸入剛纔生成 .pfx 過程當中輸入的密碼。

posted @ 2023-02-25 18:28  银河冰枫  阅读(52)  评论(0编辑  收藏  举报