Apache — Установка SSL-сертификата

#apache #ssl #https #certificate

#apache #ssl #https #сертификат

Вопрос:

Я новичок в ssl-сертификатах и установке на apache. У меня есть следующая настройка виртуального хоста

 <VirtualHost *:443>
    ServerName www.beta.mysite.com
    SSLEngine on
    SSLCertificateFile /home/ec2-user/sslCerts/beta_mysite_com.crt
    SSLCertificateKeyFile /home/ec2-user/sslCerts/mySite.key
    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/
</VirtualHost>
  

Все пути к сертификатам действительны
Когда я запускаю команду запуска apache, я получаю следующую ошибку

 Starting httpd: [Sun Oct 23 12:34:37 2016] [warn] _default_ VirtualHost overlap on port 443, the first has precedence
  

Также — мой файл ssl_error.log показывает следующую ошибку

 [Sun Oct 23 12:34:37 2016] [warn] RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Sun Oct 23 12:34:37 2016] [warn] RSA server certificate CommonName (CN) `ip-172-55-16-165' does NOT match server name!?
[Sun Oct 23 12:34:37 2016] [warn] RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Sun Oct 23 12:34:37 2016] [warn] RSA server certificate CommonName (CN) `ip-172-55-16-165' does NOT match server name!?
  

Есть идеи, что мне нужно сделать, чтобы правильно настроить ssl?

Комментарии:

1. В принципе, у вас есть 2 конфигурации VHost для порта 443

Ответ №1:

Безусловно, для использования настроены два виртуальных хоста port 443 . Пожалуйста, подтвердите и проверьте, включен ли SNI на запущенном вами сервере Apache. Означает, что один IP-адрес на один порт может использоваться для настройки нескольких URL-адресов и ssl-сертификатов. Если да, то укажите точный URL-адрес на виртуальном хостинге, как показано ниже:

 VirtualHost mysite1.abc.com:443 
VirtualHost mysite2.abc.com:443 
  

Вторая ошибка, о которой вы упомянули, гласит, что SSL-сертификаты на основе IP были привязаны к веб-сайту на основе домена. Я не уверен, какой виртуальный хост использует SSL на основе IP. Вы можете запустить следующую команду, чтобы проверить содержимое сертификатов:

 openssl x509 -inform pem -in cerfile.cer -noout -text.
  

Как только вы определите, какой виртуальный хост используется, замените сертификат на тот, который вы приобрели в CA.

Ответ №2:

@hjpotter92 был корректен — для порта 443 было настроено 2 виртуальных хостинга

Когда я запустил следующую команду yum install mod_ssl, openssl

Он генерирует файл conf.d с файлом ssl.conf У меня также был vhost для порта 443 в conf / httpd.conf Я удалил vhost в conf / httpd.conf и настроил vhost в conf.d / ssl.conf, и теперь все работает правильно