Я управляю веб-сайтом, который использует сертификат SSL / TLS от известного эмитента (в данном случае GoDaddy, хотя такая же ошибка появляется с сертификатами других эмитентов). Веб-сайт размещен на веб-сервере Apache.
Некоторые веб-браузеры жалуются на сертификат SSL / TLS с ошибкой, например:
Сертификату безопасности сайта не доверяют!
Вы попытались зайти на www.example.org, но сервер представил сертификат, выданный организацией, которой не доверяет операционная система вашего компьютера.
Другие веб-браузеры не жалуются. Это говорит мне о том, что сам сертификат правильно установлен на веб-сервере, но часть цепочки сертификатов отсутствует либо в веб-браузере, либо на сервере.
Вот еще один пример из wget
:
$ wget https://www.example.org/
--2013-01-23 12:34:47-- https://www.example.org/
Resolving www.example.org (www.example.org)... 192.168.100.100, 2001:400:xxx::10
Connecting to www.example.org (www.example.org)|192.168.100.100|:443... connected.
ERROR: The certificate of ‘www.example.org’ is not trusted.
ERROR: The certificate of ‘www.example.org’ hasn't got a known issuer.
Можно ли исправить это из конфигурации веб-сервера?
Сертификат от GoDaddy является законным и установлен на веб-сервере. Я не хочу обходить эту ошибку (например, я не хочу использовать wget --no-check-certificate
). Я хочу предотвратить эту ошибку, добавив правильную конфигурацию на стороне сервера.
Убедитесь, что у вас есть все необходимое промежуточные сертификаты установлен на сервере. Не все браузеры одинаково обрабатывают эти ошибки. Firefox обычно наиболее строг в своих требованиях.
Если вы посмотрите на полную цепочку сертификатов в одном из затронутых браузеров, какой сертификат не заслуживает доверия?
Если это промежуточный сертификат, которому не доверяют, убедитесь, что промежуточный сертификат установлен на веб-сервере.
Если это недоверенный корневой сертификат, то это не может быть исправлено на стороне сервера; клиентам потребуется обновить хранилище корневых сертификатов.