Назад | Перейти на главную страницу

не могу установить сертификат ssl на apache

Я переместил веб-сайт на другой сервер, и у меня есть сертификат SSL от godaddy. SSL отлично работал на старом сервере, который поддерживал мой предшественник. Теперь на новом сервере я регенерировал сертификат, следуя инструкциям godaddy, и изменил файл ssl.conf в соответствии с инструкциями, но когда я перехожу на часть веб-сайта, которая должна поддерживать SSL, я все равно получаю этот «ненадежный сертификат». Если я добавлю его как доверенный, все будет работать нормально, но он теряет точку доверенного сертификата.

Что еще более странно, так это то, что на старом сервере по умолчанию используется файл ssl.conf, так почему же тогда сертификат на нем работает нормально? Есть ли другие способы установить сертификат SSL, кроме изменения ssl.conf?

Изменения, которые я внес в ssl.conf:

<VirtualHost *:443>
DocumentRoot "/var/www/vhosts/domain.com/httpdocs"
ServerName www.domain.com:443
SSLCertificateFile /var/www/vhosts/domain.com/private/domain.com.crt
SSLCertificateKeyFile /usr/bin/domain.com.key
SSLCACertificateFile /var/www/vhosts/domain.com/private/gd_bundle.crt
<Directory "/var/www/vhosts/domain.com/httpdocs">
    AllowOverride All
</Directory>

Что-то я делаю не так?

================================================== ================================

ОБНОВЛЕНИЕ: как было предложено, я добавил строку, чтобы включить сертификат пакета godaddys в свой ssl.conf:

SSLCertificateChainFile /var/www/vhosts/domain.com/private/gd_bundle.crt

и закомментировал строку:

#SSLCACertificateFile /var/www/vhosts/domain.com/private/gd_bundle.crt

Все по-прежнему, сертификат ненадежный ...

ОБНОВЛЕНИЕ 2: я принял сертификат и просмотрел его, он не мой, там написано, что «Plesk» является владельцем. Plesk почему-то забивает свой сертификат, можно как-нибудь его удалить? Извините за недопонимание...

ОБНОВЛЕНИЕ 3: я посмотрел ssl_error_log, и вот что там написано:

[Sat Sep 03 12:37:36 2011] [warn] RSA server certificate CommonName (CN) `www.domain.com' does NOT match server name!?

Что это значит?

ОБНОВЛЕНИЕ 4: Если я изменю

<VirtualHost *:443>

к

<VirtualHost www.domain.com:443>

когда я пытаюсь получить доступ к странице, в браузере появляется диалоговое окно открытия / сохранения исходного файла php?!? Это просто безумие ...

Похоже, что Godaddy, как и многие эмитенты SSL, использует промежуточный сертификат, который должен обслуживаться вашим сервером SSL, чтобы цепочка доверия была полной.

По сути, вместо того, чтобы подписывать вашу CSR сертификатом, который сам находится в общедоступном пакете, известном большинству браузеров, они подписывают вашу CSR собственным сертификатом; этот их сертификат, в свою очередь, сам сертифицирован одним из сертификатов в общедоступном пакете браузеров для подписи что-нибудь.

Для этого есть веские причины, но в результате, когда вы передаете свой сертификат людям на этапе подтверждения SSL, вы должны одновременно предоставлять копию сертификата для подписи godaddy. Затем браузер может сказать себе: «Сертификат сайта подписан этим промежуточным сертификатом godaddy, а промежуточный сертификат godaddy подписан как« ОК для подписи других вещей », например, Equifax / Thawte / Verisign / каким-либо другим органом верхнего уровня, которым я доверяю », и браузер доволен. Если браузер не получает этот промежуточный сертификат, он не может подключить цепочку доверия и недоволен.

У Godaddy есть страница с инструкциями по установке сертификата цепочки для apache по адресу эта страница помощи.

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

find /etc/http/conf -type f -exec grep -i sslcertificatefile {} /dev/null\;

(заменяя /etc/http/conf с корнем конфигурации apache, если вы сохраните его в другом месте) и посмотрите, где настроен сертификат plesk. Выведите этот раздел и попробуйте перезапустить apache.

Может тебе понадобится SSLCertificateChainFile вариант внутри вашего VirtualHost. Дополнительную информацию можно найти на домашней странице поставщика SSL. https://certs.godaddy.com/anonymous/repository.seam