Install SSL certificate on Apache Windows Server 2012 R2

I am a developer. Our server admins have given me 3 files. .cer, .pfx and .p7b and told me to install SSL in Apache Server. I have Wamp with Apache version 2.4.9. I have search and found something. I open httpd.conf file and search for DocumentRoot. After DocumentRoot I have added,

DocumentRoot "c:/wamp/www/"

SSLEngine on

SSLCertificateFile C:/Path/MyCer.cer

SSLCertificateKeyFile C:/Path/MyPfx.pfx

SSLCACertificateFile C:/Path/MyP7b.p7b

Now when I restart the apache. I am unable to navigate the server even on http. When I comment the above lines, my sites works on http.

2
задан 4 April 2017 в 09:33
2 ответа

Хотя это не совсем «вопрос», и вы не указываете, что находится внутри ваших файлов, вы делаете как минимум одну ошибку: файл pfx (при условии, что это не ошибка наименования) не может использоваться напрямую как «ключ» в Apache. Не зная содержимого cer и файла p7b, предположим, что в pfx есть вся необходимая информация, и что у вас есть пароль pfx (да, верно?), И начнем с него.

  1. Возьмите и установите OpenSSL для Windows (предложение: https://indy.fulgan.com/SSL/ содержит предварительно скомпилированные двоичные файлы, если вы не хотите строить из источников в http://www.openssl.org/ )

  2. Извлеките из pfx различные файлы, необходимые для Apache (при необходимости вам будет предложено ввести пароль pfx):

    a. Извлеките закрытый ключ сертификата SSL (зашифрованный) из pfx

    C: \ Path> openssl pkcs12 -in MyPfx.pfx -nocerts -nodes -out MyEncKey.key

    b. Удалите шифрование из закрытого ключа сертификата SSL

    C: \ Path> openssl rsa -in MyEncKey.key -out MyKey.key

    c. Извлеките сертификат SSL из pfx

    C: \ Path> openssl pkcs12 -in MyPfx.pfx -clcerts -nokeys -out MyCert.cer

    d. Извлеките (возможно, пустую) цепочку сертификатов CA из pfx

    C: \ Path> openssl pkcs12 -in MyPfx.pfx -nodes -nokeys -cacerts -out MyCAs.crt

  3. Перестройте свой httpd.conf, используя вместо этого эти строки вашего (примечание: ВКЛЮЧАЙТЕ СТРОКУ SSLCACertificateFile ТОЛЬКО, если MyCAs.crt не пуст; вы можете проверить его с помощью любого текстового редактора)

  SSLCertificateFile C:/Path/MyCert.cer
  SSLCertificateKeyFile C:/Path/MyKey.key
  SSLCACertificateFile C:/Path/MyCAs.crt
4
ответ дан 3 December 2019 в 10:35

Ваш SSL-сертификат будет работать с портом HTTPS, то есть 443, вам нужно перенаправить свой трафик с Http на HTTPS для Apache, который вам нужно сделать. Вам нужно перейти в MMC, чтобы разместить свой сертификат, а затем проверить тот.

-1
ответ дан 3 December 2019 в 10:35

Теги

Похожие вопросы