Вопрос или проблема
Я установил SSL-сертификат. Похоже, он работает в Firefox, но не работает в Chrome. Есть ли какие-то советы?
Вот домен: https://www.sermovi.com
У меня есть Apache в качестве веб-сервера, и вот строки для конфигурации сертификата:
Цепочка вашего сертификата неполная. Вам нужен этот промежуточный сертификат между вашим основным сертификатом и корневым сертификатом USERTrust RSA Certification Authority
. Обратите внимание, что указанный сертификат находится в бинарном формате DER, поэтому вам нужно сначала конвертировать его в формат PEM.
Кроме того, [у вас есть серьезные проблемы с небезопасным алгоритмом], поэтому я настоятельно рекомендую вам проверить и исправить все настройки TLS вашего веб-сервера – или чтобы кто-то сделал это за вас.
Обмен ключами сервера использует SHA-1 в алгоритме подписи, который не объявлен как поддерживаемый Chrome. Вот что отправляет сервер:
Но rsa_pkcs1_sha1 не входит в алгоритмы подписи, объявленные как поддерживаемые Chrome – и ваш сервер игнорирует это. Следовательно, ERR_SSL_PROTOCOL_ERROR. Однако rsa_pkcs1_sha1 поддерживается Firefox и также правильно объявлен, поэтому он работает.
Помимо этого, сертификат неправильно сконфигурирован, и сервер поддерживает слабые шифры и протоколы, но это не причина вашей текущей проблемы.
Ответ или решение
Проблема с SSL-сертификатом: работающий в Firefox, но не в Chrome
Установка SSL-сертификата является важной частью обеспечения безопасности веб-сайта. Однако бывает так, что сертификат работает корректно в одном браузере, скажем, Firefox, но вызывает проблемы в другом, например, в Google Chrome. В данном ответе мы рассмотрим возможные причины этой проблемы и предложим рекомендации по ее устранению.
Причины проблем с SSL-сертификатом
-
Неполная цепочка сертификатов:
Согласно информации, полученной от других пользователей, одна из главных проблем заключается в том, что ваша цепочка сертификатов неполная. Для успешной верификации сертификата Chrome (в отличие от Firefox) требует наличия всех промежуточных сертификатов. Чтобы исправить это, вам необходимо добавить промежуточный сертификат, который можно найти по следующей ссылке: Sectigo RSA Domain Validation Secure Server CA.Учтите, что данный сертификат представлен в бинарном формате DER. Вам нужно будет конвертировать его в формат PEM, который используется в Apache. Для этого можно воспользоваться встроенными утилитами OpenSSL.
Пример команды для конверсии:
openssl x509 -inform der -in SectigoRSADomainValidationSecureServerCA.crt -out SectigoRSADomainValidationSecureServerCA.pem
После этого добавьте PEM-файл в конфигурацию вашего Apache-сервера.
-
Использование устаревших или небезопасных алгоритмов шифрования:
Обратите внимание, что текущая конфигурация вашего сервера использует алгоритм SHA-1. Этот алгоритм не поддерживается Chrome, что приводит к ошибкеERR_SSL_PROTOCOL_ERROR
. Chrome отказывается аутентифицировать соединение, если не получает достаточно безопасные алгоритмы.Рекомендуется обновить настройки сервера так, чтобы он использовал более надежные алгоритмы, такие как SHA-256.
-
Поддержка шифров и протоколов TLS:
Ваш сервер также поддерживает устаревшие шифры и протоколы. Хотя это может не быть основной причиной проблемы, важно провести ревизию всей конфигурации TLS, чтобы обеспечить совместимость с современными стандартами безопасности. Настоятельно рекомендуется отключить поддержку небезопасных шифров (таких как RC4) и обеспечить поддержку только современных протоколов, таких как TLS 1.2 и TLS 1.3.
Рекомендации по исправлению проблемы
-
Обновите цепочку сертификатов:
Добавьте промежуточный сертификат в конфигурацию вашего сервера. -
Обновите используемые алгоритмы шифрования:
Как можно скорее настройте сервер на использование алгоритмов, поддерживаемых Chrome, например, используйте SHA-256 или более современные варианты. -
Проверьте конфигурацию Apache:
Убедитесь, что ваша конфигурация веб-сервера соответствует современным стандартам безопасности. Ниже приведен пример правильной конфигурации SSL для Apache:SSLEngine on SSLCertificateFile /path/to/your/certificate.crt SSLCertificateKeyFile /path/to/your/private.key SSLCertificateChainFile /path/to/your/intermediate_certificate.pem SSLProtocol all -SSLv2 -SSLv3 SSLCipherSuite HIGH:!aNULL:!MD5
-
Тестируйте конфигурацию:
Используйте инструменты, такие как Qualys SSL Labs, для проверки вашей конфигурации SSL и выявления любых дополнительных проблем, которые могут возникнуть.
Заключение
Проблемы с SSL-сертификатом, работающим в Firefox, но не в Chrome, часто связаны с неполной цепочкой сертификатов, устаревшими алгоритмами шифрования и небезопасными конфигурациями сервера. Следуя предложенным рекомендациям, вы сможете обеспечить корректную работу вашего SSL-сертификата во всех распространённых браузерах, включая Chrome. Не забывайте периодически проверять и обновлять настройки безопасности вашего веб-сервера, чтобы оставаться в курсе последних стандартов.