Конфигурация виртуального хоста Apache2 с Cloudflare не работает из-за невозможности согласовать шифр [закрыто]

Вопрос или проблема

Я использую Apache2 на Ubuntu.

У меня есть это DNS имя с использованием Cloudflare:

test.staging.mysite.com

Я использую Certbot letsencrypt для SSL

Следующая ошибка возникает при доступе к сайту в браузере:

Ошибка безопасного соединения

Произошла ошибка во время соединения с test.staging.mysite.com. 
Невозможно обеспечить безопасное общение с партнером: нет общих алгоритмов шифрования.

Код ошибки: SSL_ERROR_NO_CYPHER_OVERLAP

Страница, которую вы пытаетесь просмотреть, не может быть показана, так как подлинность 
полученных данных не может быть проверена.
Пожалуйста, свяжитесь с владельцами сайта, чтобы сообщить им об этой проблеме.

вот мой конфигурационный файл:

<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerName test.staging.mysite.com

    ProxyPreserveHost On
    ProxyPass / http://127.0.0.1:3400/
    ProxyPassReverse / http://127.0.0.1:3400/

    ErrorLog ${APACHE_LOG_DIR}/test.staging.mysite.com-error.log
    CustomLog ${APACHE_LOG_DIR}/test.staging.mysite.com-access.log combined

    SSLCertificateFile /etc/letsencrypt/live/test.staging.mysite.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/test.staging.mysite.com/privkey.pem
    Include /etc/letsencrypt/options-ssl-apache.conf


    SSLProtocol -all +TLSv1.2 +TLSv1.3
    SSLCipherSuite HIGH:!aNULL:!MD5:!3DES
    SSLHonorCipherOrder on
    Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"

</VirtualHost>
</IfModule>

Ответ или решение

Ошибка "SSL_ERROR_NO_CYPHER_OVERLAP" означает, что сервер и клиент не могут договориться о совместном шифровании. Это происходит, когда сервер и клиент не имеют общих протоколов и наборов шифров, которые они оба поддерживают. Рассмотрим, как вы можете решить эту проблему в контексте Apache2, Cloudflare и Let’s Encrypt на Ubuntu.

Проверьте конфигурацию SSL

  1. SSL Протоколы и Шифры:
    Убедитесь, что версии протоколов и наборы шифров, указанные в конфигурации вашего виртуального хоста Apache, поддерживаются Cloudflare. Ваши текущие настройки такие:

    SSLProtocol -all +TLSv1.2 +TLSv1.3
    SSLCipherSuite HIGH:!aNULL:!MD5:!3DES
    SSLHonorCipherOrder on

    Такие настройки должны быть совместимы с современными конфигурациями. Однако, проверьте, что эти ограничения соответствуют поддерживаемым Cloudflare шифрам. Для этого можно воспользоваться документацией Cloudflare.

  2. Файл конфигурации options-ssl-apache.conf:
    Убедитесь, что файл /etc/letsencrypt/options-ssl-apache.conf не содержит несовместимых настроек, которые могут перебить ваши параметры шифрования.

Настройки Cloudflare

  1. Настройки SSL/TLS в Cloudflare:
    Проверьте настройки SSL/TLS в панели управления Cloudflare. Режим SSL должен быть установлен на "Full" или "Full (Strict)" для взаимодействия с Let’s Encrypt сертификатами. Убедитесь, что при этом включены версии TLS, поддерживаемые вашим сервером.

  2. Режим прокси Cloudflare:
    Попробуйте отключить режим прокси (облако в панели управления должно быть серым, а не оранжевым) и проверить доступ напрямую. Если проблема устраняется, вероятно, потребуется дополнительно изучить настройки Cloudflare.

Диагностика

  1. Журналы ошибок:
    Проверьте файлы журналов ошибок Apache /var/log/apache2/error.log. Дополнительная информация может помочь выявить возможные причины конфликта шифров.

  2. Обновления:
    Убедитесь, что все используемые вами программные компоненты актуальны. Это включает обновления Apache, OpenSSL и любые другие библиотеки, связанные с обработкой SSL.

  3. Тестирование:
    Используйте онлайн-инструменты для проверки конфигурации SSL вашего сервера, например, SSL Labs. Это поможет выявить, какие именно шифры и протоколы доступны и какие поддерживаются.

Заключение

С двойной проверкой правильности всех настроек и их соответствия как требованиям Apache, так и Cloudflare, удастся устранить проблему совместимости шифров. Также обратите внимание на актуальность и поддержку используемых программных средств. В случае, если самостоятельно проблему решить не удается, рассмотрите обращение в поддержку Cloudflare или сообщество Apache для получения дополнительных советов.

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

Оцените материал
Добавить комментарий

Капча загружается...