我正在嘗試配置 Apache 以接受 HTTPS 請求。
根據網上找到的一些教程,我生成了以下證書:
- my-ca.key(CA私鑰)
- my-ca.crt(CA證書)
- my-server.key(伺服器私鑰)
- my-server.csr(伺服器憑證簽署請求)
- my-server.crt(伺服器憑證)
特別是,最後一個憑證是使用以下命令產生的:
openssl x509 -req -sha1 -in my-server.csr -out my-server.crt -CA my-ca.crt -CAkey my-ca.key -CAcreateserial
不幸的是,我無法啟動 Apache 服務,因為提到error.log
文件內容:
[Sun Apr 05 01:00:23.831320 2020] [ssl:emerg] [pid 1463] AH02561: Failed to configure certificate localhost:443:0, check /etc/ssl/my-certs/my-server.crt
[Sun Apr 05 01:00:23.832228 2020] [ssl:emerg] [pid 1463] SSL Library Error: error:140AB18E:SSL routines:SSL_CTX_use_certificate:ca md too weak
AH00016: Configuration Failed
在Google上搜尋解決方案,發現這StackOverflow 上的有用答案,但正如您可以在上面檢查的那樣,我已經使用了與md5
(在我的例子中sha1
)不同的哈希演算法來產生伺服器憑證。
那麼,為什麼啟動Apache服務時總是會回傳這個錯誤呢?我還應該建立新的 CA 憑證和/或伺服器憑證請求嗎?