Я купил сертификат на checkdomain. Мне дали два файла: .crt и .ca-bundle и .key . Я переместил их в «/ etc / ssl / g /». Я включил SSL с помощью «a2enmod ssl» и перезапустил apache, используя «sudo service apache2 restart», без ошибок до тех пор.
Затем я отредактировал default-ssl.conf:
<VirtualHost *:443>
ServerName mrgrimod.de
DocumentRoot "/var/www/html"
SSLEngine on
SSLCertificateFile /etc/ssl/g/g.crt
SSlCertificateKeyFile /etc/ssl/g/g.key
</VirtualHost>
Затем я попытался перезапустить apache, используя «sudo service apache2 restart», но он не может перезапустить и выдает эту ошибку: Задание для apache2.service не выполнено. См. «Systemctl status apache2.service» и «journalctl -xn» для подробностей.
Журнал ошибок apache содержал следующие строки:
Fri Mar 30 17:03:50.143429 2018] [ssl:error] [pid 10598:tid 3074262784] AH02579: Init: Private key not found
[Fri Mar 30 17:03:50.143530 2018] [ssl:error] [pid 10598:tid 3074262784] SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Fri Mar 30 17:03:50.143557 2018] [ssl:error] [pid 10598:tid 3074262784] SSL Library Error: error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error
[Fri Mar 30 17:03:50.143578 2018] [ssl:error] [pid 10598:tid 3074262784] SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Fri Mar 30 17:03:50.143599 2018] [ssl:error] [pid 10598:tid 3074262784] SSL Library Error: error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error (Type=RSA)
[Fri Mar 30 17:03:50.143620 2018] [ssl:error] [pid 10598:tid 3074262784] SSL Library Error: error:04093004:rsa routines:OLD_RSA_PRIV_DECODE:RSA lib
[Fri Mar 30 17:03:50.143640 2018] [ssl:error] [pid 10598:tid 3074262784] SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Fri Mar 30 17:03:50.143660 2018] [ssl:error] [pid 10598:tid 3074262784] SSL Library Error: error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error (Type=PKCS8_PRIV_KEY_INFO)
[Fri Mar 30 17:03:50.143674 2018] [ssl:emerg] [pid 10598:tid 3074262784] AH02311: Fatal error initialising mod_ssl, exiting. See /var/log/apache2/error.log for more information
[Fri Mar 30 17:03:50.143704 2018] [ssl:emerg] [pid 10598:tid 3074262784] AH02564: Failed to configure encrypted (?) private key server1.server1.de:443:0, check /etc/ssl/ssl.key/server.key
Вы можете использовать команду apachectl -t
для проверки наличия синтаксических ошибок перед перезапуском службы apache
.
Команда должна вывести синтаксис OK
, если ошибок не обнаружено.
Вы должны включить более подробную информацию о ваших файлах .conf
, прежде чем мы сможем решить, в чем ошибка.
Несмотря на это, это пример конфигурации для включения поддержки SSL:
<VirtualHost *:443>
ServerName example.com
DocumentRoot "/var/www/html"
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/mycert.pem
SSlCertificateKeyFile /etc/httpd/ssl/mycert.pem
SSLProtocol ALL -SSLv2 -SSLv3
SSLHonorCipherOrder On
SSLCipherSuite HIGH:!aNULL:!MD5
</VirtualHost>
Чтобы включить SSL, файл конфигурации должен включать как минимум следующие параметры:
SSLEngine On: включить поддержку SSL.
SSLCertificateFile: расположение подписанного сертификата вам предоставили.
SSlCertificateKeyFile: ключевой файл, который был сгенерирован в вашей системе.
Кроме того, многие браузеры требуют подхода для обоснования запроса к вашему сайту, чтобы включить файл цепочки - тот, который называется bundle- используя параметр конфигурации SSLCertificateChainFile
И я бы предложил следующие ссылки: Практическое руководство по Apache: https://httpd.apache.org/docs/2.4/en/ssl/ssl_howto.html
Чтобы проверить свой сертификат, вы можете использовать следующую команду и проверить результат модуля сертификата и файла ключа, он должен быть одинаковым.
openssl x509 -noout -modulus -in /etc/ssl/g/g.crt
openssl rsa -noout -modulus -in /etc/ssl/g/g.key
Также,вы можете проверить права доступа к файлу в вашем каталоге / etc / ssl / g / просто для проверки вы можете выполнить команду chmod -R 777 / etc / ssl / g content и перезапустить службу apache
Просто чтобы упомянуть всех, у кого есть эта ошибка или другая на apache с https нужно добавить Слушайте 443 на моем apache conf