← Варианты использования / use-cases / solutions
Требуйте HTTPS и шифруйте весь трафик (тарифы Free, Pro и Business)
HTTPS в Cloudflare предполагает два отдельных соединения: от посетителя к Cloudflare и от Cloudflare к вашему исходному серверу. Для сквозной безопасности оба соединения должны быть зашифрованы. В этом руководстве рассмотрены пять этапов:
- Настройте режим шифрования SSL/TLS.
- Перенаправляйте все запросы HTTP на HTTPS.
- Усильте защиту настройки HTTPS, задав минимальные версии TLS и используя HSTS.
- Отслеживайте сторонние скрипты на своих страницах.
- Проверьте конфигурацию.
Базовый сценарий работы доступен на тарифах Free, Pro и Business.
Настройка режима шифрования SSL/TLS
Режим шифрования SSL/TLS определяет, как Cloudflare подключается к серверу источника. Для сквозного шифрования используйте Full (strict) : шифрует оба соединения и проверяет ваш исходный сертификат. Подробное сравнение всех доступных режимов см. в Режимы шифрования.
Проверка текущего режима
-
На панели управления Cloudflare перейдите к разделу Обзор SSL/TLS страницу.
Перейдите в Обзор ↗ -
Проверьте текущий режим шифрования, отображаемый на странице.
- Если режим уже Full (strict), перейдите к Перенаправление всех запросов HTTP на HTTPS.
- Если режим не Full (strict), перейдите к следующему разделу, чтобы установить исходный сертификат (если требуется) и изменить режим.
Установка сертификата Cloudflare Origin CA
Если у вашего исходного сервера нет действующего SSL-сертификата, установите бесплатный сертификат Cloudflare Origin CA. Сертификаты Origin CA действительны сроком до 15 лет и являются доверенными для Cloudflare, поэтому после установки такого сертификата вы можете установить режим шифрования Full (strict).
Если у вашего исходного сервера уже есть действующий сертификат от публично доверенного удостоверяющего центра, перейдите к Установите режим шифрования Full (strict).
1. Создание сертификата Origin CA
-
Перейдите в Origin Server страницу.
Перейдите в Origin Server ↗ -
На Origin Certificates вкладке выберите Create Certificate.
-
Выберите один из вариантов:
- Создание закрытого ключа и CSR с помощью Cloudflare: Тип приватного ключа может быть RSA или ECC.
- Использовать мой закрытый ключ и CSR: Вставьте ваш Certificate Signing Request (CSR) в текстовое поле.
-
Укажите имена хостов, включая wildcard-адреса, которые должен защищать сертификат с помощью SSL-шифрования. По умолчанию в список включены апекс зоны и wildcard-имя первого уровня.
-
Выберите Действительность сертификата период.
-
Выберите Создание.
-
Выберите Формат ключа:
- Серверы, использующие OpenSSL (например, Apache и NGINX), обычно ожидают файлы PEM (ASCII в кодировке Base64), но также работают с двоичными файлами DER.
- Серверам на Windows и Apache Tomcat требуется формат PKCS#7 (
.p7bфайл).
-
Скопируйте подписанный Origin Certificate и Приватный ключ в отдельные файлы. По соображениям безопасности вы не можете увидеть Приватный ключ после того как вы покинете этот экран.
-
Выберите OK.
2. Установите сертификат на ваш origin-сервер
-
Загрузите сертификат Origin CA на исходный веб-сервер.
-
Обновите конфигурацию веб-сервера, чтобы использовать этот сертификат. Инструкции по установке для конкретного сервера см. Origin CA certificates.
-
(Требуется для некоторых серверов) Загрузите Корневой сертификат CA Cloudflare к вашему исходному серверу.
-
Включение SSL и порта
443на вашем исходном веб-сервере.
Установите режим шифрования Full (strict)
После установки действительного сертификата на исходном сервере задайте режим шифрования Full (strict) выполнив шаги ниже.
Чтобы изменить режим шифрования в панели управления:
-
На панели управления Cloudflare перейдите к разделу Обзор SSL/TLS страницу.
Перейдите в Обзор ↗ -
Выберите режим шифрования.
Чтобы изменить режим шифрования через API, отправьте PATCH запрос с ssl в качестве имени настройки в пути URI, а также value параметр, установленный в нужное вам значение (off, flexible, full, strict, или origin_pull).
Перенаправление всех запросов HTTP на HTTPS
Даже при наличии действующего edge-сертификата посетители всё ещё могут обращаться к ресурсам по незащищённым HTTP-соединениям. Устранить это помогают две настройки, работающие вместе:
- Always Use HTTPS перенаправляет HTTP-запросы на HTTPS
- Automatic HTTPS Rewrites устраняет ссылки на смешанный контент в HTML вашей страницы
Включите Always Use HTTPS
Always Use HTTPS перенаправляет все HTTP-запросы на HTTPS до того, как они достигнут вашего исходного сервера.
-
На панели управления Cloudflare перейдите к разделу Обзор SSL/TLS страницу.
Перейдите в Обзор ↗ -
Убедитесь, что ваш режим шифрования SSL/TLS не установлен в значение Off. Когда режим шифрования установлен на Off, опция Always Use HTTPS не отображается в dashboard.
-
Перейдите в Edge Certificates ↗ страницу.
-
Включите Always Use HTTPS.
-
Убедитесь, что ваш режим шифрования SSL/TLS не установлен в значение Off.
-
Отправьте
PATCHзапрос сalways_use_httpsв качестве имени настройки в пути URI, а такжеvalueпараметр со значением"on".
Включите Automatic HTTPS Rewrites
Automatic HTTPS Rewrites предотвращает ошибки смешанного контента, переписывая HTTP-адреса ресурсов в HTML вашей страницы на HTTPS. Это полезно для сайтов, где вы не контролируете все адреса ресурсов, например для контента, размещённого в CMS, или встроенных сторонних ресурсов.
-
На панели управления Cloudflare перейдите к разделу Edge Certificates страницу.
Перейдите в Edge Certificates ↗ -
Для Automatic HTTPS Rewrites, переключите тумблер в положение Включено.
Отправьте PATCH запрос с automatic_https_rewrites в качестве имени настройки в пути URI, а также value параметр со значением "on".
Усиление защиты конфигурации HTTPS
После настройки режима шифрования и перенаправления HTTP-трафика усильте конфигурацию: задайте минимальную версию TLS, включите HTTP Strict Transport Security (HSTS) и включите TLS 1.3.
Установите минимальную версию TLS
TLS 1.0 и 1.1 содержат известные уязвимости и больше не считаются безопасными. Если задать минимальную версию TLS 1.2, соединения от клиентов со старыми протоколами будут блокироваться. Рекомендации по выбору версии см. в Протоколы TLS.
-
На панели управления Cloudflare перейдите к разделу Edge Certificates страницу.
Перейдите в Edge Certificates ↗ -
Для Minimum TLS Version, выберите TLS 1.2.
Отправьте PATCH запрос с min_tls_version в качестве имени настройки в пути URI, а также value параметр со значением "1.2".
Включите TLS 1.3
TLS 1.3 обеспечивает более быстрое установление соединения и более высокий уровень безопасности по сравнению с TLS 1.2.
-
На панели управления Cloudflare перейдите к разделу Edge Certificates страницу.
Перейдите в Edge Certificates ↗ -
Для TLS 1.3, переключите тумблер в положение Включено.
Отправьте PATCH запрос с tls_1_3 в качестве имени настройки в пути URI, а также value параметр со значением "on". Чтобы также включить 0-RTT (Zero Round Trip Time Resumption), установите значение "zrt".
Включите HSTS
HTTP Strict Transport Security (HSTS) добавляет заголовок ответа, который указывает браузерам подключаться к вашему сайту только по HTTPS, даже если ссылка или редирект пытаются направить их по HTTP. HSTS защищает от атак с понижением версии протокола.
Прежде чем включить HSTS, убедитесь в выполнении следующих предварительных условий:
- HTTPS включён и работает на вашем домене.
- Ваши записи DNS настроены на Proxied.
- Вы нигде не перенаправляете HTTPS на HTTP.
-
На панели управления Cloudflare перейдите к разделу Edge Certificates страницу.
Перейдите в Edge Certificates ↗ -
Для Строгая транспортная безопасность HTTP (HSTS), выберите Включение HSTS.
-
Ознакомьтесь с диалоговым окном и выберите Понятно.
-
Выберите Далее.
-
Настройте параметры HSTS:
- Max Age Header: Выберите длительность (начните с 6 месяцев и увеличьте до 12 месяцев после подтверждения стабильности).
- Apply HSTS policy to subdomains (includeSubDomains): Включите, если все ваши поддомены поддерживают HTTPS. После включения этой функции поддомены без HTTPS станут недоступны.
- Preload: Включайте только после того, как Max Age Header установлен на 12 месяцев. Включение в Preload предотвращает атаки понижения версии протокола при первом посещении. Отправьте домен на hstspreload.org ↗ после включения preload.
- No-Sniff Header: Отправляет
X-Content-Type-Options: nosniffзаголовок. Включите, чтобы запретить браузерам выполнять MIME-сниффинг.
-
Выберите Save.
Отправьте PATCH запрос с security_header в качестве имени настройки в пути URI и укажите value объект, включающий ваши настройки HSTS.
Проверьте свои наборы шифров
Наборы шифров Cloudflare по умolчанию обеспечивают надёжное шифрование для большинства сайтов. Менять их нужно только в том случае, если это прямо предписано аудитом безопасности или требованиями по соответствию.
Подробнее о наборах шифров по умолчанию и их настройке см. в Наборы шифров. Настройки шифров для конкретных требований compliance см. в Настройка наборов шифров через API.
Отслеживайте сторонние скрипты с помощью клиентской защиты
HTTPS шифрует данные при передаче, но сторонние скрипты, загружаемые вашими страницами, всё равно могут похищать данные из браузера. Защита на стороне клиента отслеживает эти скрипты и уведомляет вас о неожиданных добавлениях.
Включите мониторинг скриптов
-
В панели управления Cloudflare перейдите в раздел Security Настройки страницу.
Перейдите в Настройки ↗ -
(Необязательно) Отфильтруйте по Злоупотребление на стороне клиента.
-
Включите Непрерывный мониторинг скриптов.
Просмотрите обнаруженные ресурсы
После включения мониторинга Cloudflare может потребоваться некоторое время, чтобы сформировать список обнаруженных скриптов на вашем домене.
-
На панели управления Cloudflare перейдите к разделу Web assets страницу.
Перейдите в Web assets ↗ -
Выберите Ресурсы на стороне клиента на вкладке.
-
Просмотрите список обнаруженных скриптов. Проверьте, нет ли среди них незнакомых или неожиданных скриптов с доменов, которые вы не узнаёте.
В зависимости от тарифного плана Cloudflare вы также можете просматривать подключения, выполняемые скриптами, и проверять их на вредоносную активность. Инструкции по настройке см. в Начало работы с защитой на стороне клиента.
Проверка конфигурации
После завершения предыдущих этапов убедитесь, что конфигурация HTTPS работает как ожидается.
Используйте Automatic SSL/TLS
Функция Cloudflare Automatic SSL/TLS анализирует ваш исходный сервер и выбирает наиболее безопасный режим шифрования из поддерживаемых. Если в вашей зоне используется Automatic SSL/TLS (значение по умолчанию для новых зон), Cloudflare автоматически подбирает режим и не переключится на менее безопасный, даже если сертификат на исходном сервере истечёт.
Чтобы проверить, использует ли ваша зона Automatic SSL/TLS:
-
На панели управления Cloudflare перейдите к разделу Обзор SSL/TLS страницу.
Перейдите в Обзор ↗ -
Проверьте, Automatic SSL/TLS или Собственный SSL/TLS выбрано. Если выбран Custom и вы хотите, чтобы Cloudflare управлял режимом автоматически, выберите Automatic SSL/TLS.
Проверка с помощью внешних инструментов
Используйте SSL Labs Server Test ↗ для проверки конфигурации HTTPS за пределами сети Cloudflare. Введите домен и изучите отчёт. Оценка A или A+ означает, что конфигурация TLS, цепочка сертификатов и поддержка протоколов соответствуют текущим стандартам безопасности.
Чтобы проверить поддерживаемые версии TLS, отправьте запрос на свой веб-сайт или в приложение, указав версию TLS.
Например, чтобы проверить TLS 1.1, используйте curl команду ниже. Замените www.example.com с вашим доменом и именем хоста Cloudflare.
curl https://www.example.com -svo /dev/null --tls-max 1.1Если тестируемая версия TLS блокируется Cloudflare, рукопожатие TLS не завершается и возвращается ошибка:
* error:1400442E:SSL routines:CONNECT_CR_SRVR_HELLO:tlsv1 alert
Дополнительные материалы
SSL/TLS
- Начало работы с SSL/TLS : руководство по началу работы с периферийными сертификатами, режимами шифрования и принудительным использованием HTTPS
- Режимы шифрования : подробное описание режимов Off, Flexible, Full и Full (strict)
- Cloudflare Origin CA : создание бесплатных исходных сертификатов, которым доверяет Cloudflare
- Ошибки смешанного содержимого : устранение проблем с ресурсами HTTP, загружаемыми на страницах HTTPS
- ERR_TOO_MANY_REDIRECTS : устранение циклов перенаправления, вызванных неверной настройкой режима шифрования
Client-side security
- Начало работы с защитой на стороне клиента : включите мониторинг, просмотрите скрипты, настройте оповещения и создайте правила
- Безопасность на стороне клиента и соответствие PCI DSS : как безопасность на стороне клиента соотносится с требованиями PCI DSS v4