Apache-2.2

將 SSL 證書移動到新伺服器

  • March 9, 2012

我正在將 SSL crt 和密鑰從一台伺服器移動到新伺服器。舊的在一個帶有 cpanel 的盒子上,而新的只是一個 LAMP Ubuntu 盒子。我一直在遵循教程和說明幾個小時而沒有得到任何地方。我創建了一個在 443 上監聽的 VirtualHost 文件。所有非 https 頁面都可以工作,只要我轉到 https 頁面,它就會給我一個連接被拒絕。我嘗試使用報告“未找到證書”的digicert.com/help。我該如何解決這個問題?

如果您收到連接被拒絕錯誤,則該框未偵聽埠 443 或防火牆阻止它。您可以使用netstat -an | grep :443(在那個盒子上)查看它是否在聽。

監聽 443 的 VirtualHost 應該有一個如下所示的塊:

  SSLEngine on

  SSLCertificateFile /etc/pki/tls/certs/www.example.com.crt
  SSLCertificateKeyFile /etc/pki/tls/private/www.example.com-key
  SSLCertificateChainFile /etc/pki/tls/certs/startssl.intermediate.bundle.pem
  SSLCACertificateFile /etc/pki/tls/certs/startssl-ca.pem

您可以將證書和密鑰文件從舊伺服器複製到新伺服器,並根據需要調整配置文件中的路徑。

我有幾行與我正在使用的證書頒發機構有關。特別是,我使用 SSLCertificateChainFile 行指定中間證書。您可能需要對來自 CA 的文件執行類似的操作(查看 CA 的文件以獲取特定文件)。

一旦到位,重新載入apache。如果有問題,請檢查 /var/log/httpd/error.log。確保權限正確,即Apache使用者可以讀取上述文件,並且私鑰不能被其他人訪問。

引用自:https://serverfault.com/questions/367870