Cloudflare Flexible или Full SSL: разница и что выбрать в 2026 году
Почему Flexible SSL опасен и как правильно настроить шифрование между Cloudflare и вашим сервером
Введение
Когда вы подключаете домен к Cloudflare, панель предлагает выбрать режим SSL/TLS. По умолчанию часто активируется Flexible — самый простой вариант, который не требует установки сертификата на ваш сервер. Именно из-за этой простоты многие сайты годами работают в небезопасной конфигурации, даже не подозревая об этом.
Разница между Flexible и Full SSL — не косметическая. Она определяет, шифруется ли трафик на всём пути от браузера до вашего сервера или только на участке браузер → Cloudflare. В этом гайде мы разберём все режимы, покажем, как проверить текущий, и пошагово переведём сайт на безопасный Full (Strict).
Что такое SSL/TLS режимы Cloudflare
Cloudflare работает как обратный прокси: браузер посетителя соединяется с ближайшим дата-центром Cloudflare, а тот, в свою очередь, запрашивает контент у вашего origin-сервера. SSL/TLS режим определяет, как шифруется второй участок — между Cloudflare и вашим сервером.
Всего режимов пять:
Off — шифрования нет вообще, трафик идёт по HTTP.
Flexible — браузер → Cloudflare по HTTPS, Cloudflare → сервер по HTTP.
Full — шифрование на обоих участках, но сертификат origin не проверяется.
Full (Strict) — шифрование на обоих участках + проверка сертификата origin.
Strict (SSL-Only Origin Pull) — только для origin с валидным сертификатом, без возможности отката на HTTP.
Для 99% сайтов правильный выбор — Full (Strict). Flexible стоит рассматривать только как временное решение на несколько минут во время миграции.
Чем Flexible отличается от Full
Ключевое отличие — в том, что происходит между Cloudflare и вашим сервером.
| Параметр | Flexible | Full | Full (Strict) |
|---|---|---|---|
| Браузер → Cloudflare | HTTPS | HTTPS | HTTPS |
| Cloudflare → сервер | HTTP | HTTPS | HTTPS |
| Проверка сертификата origin | — | Нет | Да |
| Нужен сертификат на сервере | Нет | Да (любой) | Да (валидный) |
| Защита от MITM | Нет | Частичная | Да |
| Риск redirect loop | Высокий | Низкий | Низкий |
В режиме Flexible Cloudflare принимает HTTPS-соединение от посетителя, расшифровывает его и отправляет на ваш сервер обычный HTTP-запрос. Это значит, что любой узел между Cloudflare и вашим хостингом может прочитать или подменить данные: логины, пароли, платёжную информацию, куки сессий.
В режиме Full трафик шифруется на всём пути. Разница между Full и Full (Strict) — в проверке сертификата: Full примет даже самоподписанный или просроченный сертификат, Full (Strict) откажется работать, если сертификат невалиден.
Почему Flexible SSL опасен
Многие считают: «У меня же зелёный замочек в браузере, значит всё безопасно». Это заблуждение. Замочек говорит только о соединении браузер → Cloudflare. Дальше трафик идёт открытым текстом.
Основные риски Flexible:
1. Перехват данных. Провайдер, администратор сети или злоумышленник в той же сети может прочитать весь трафик между Cloudflare и сервером. 2. Подмена контента. В ответ можно внедрить вредоносный скрипт, рекламу или фишинговую форму. 3. Кража сессий. Куки без флага Secure уходят в открытом виде. 4. Проблемы с SEO. Google давно учитывает HTTPS, но при Flexible реальный origin остаётся HTTP — некоторые сканеры и инструменты это видят. 5. Бесконечные редиректы. Если на сервере настроен редирект HTTP → HTTPS, а Cloudflare ходит к нему по HTTP, возникает цикл.
Cloudflare прямо не рекомендует Flexible для продакшена, но оставляет режим для совместимости со старыми хостингами.
Когда Flexible всё-таки уместен
Есть несколько сценариев, где Flexible временно оправдан:
Хостинг не поддерживает установку SSL-сертификатов (редкость в 2026 году).
Вы только что перевели домен на Cloudflare и ещё не выпустили сертификат для origin.
Тестовый стенд, который не содержит чувствительных данных.
Во всех остальных случаях переходите на Full (Strict) как можно скорее. Если хостинг не даёт поставить сертификат — меняйте хостинг или используйте Cloudflare Tunnel, который избавляет от необходимости открывать origin наружу.
Требования для перехода на Full (Strict)
Прежде чем менять режим, убедитесь, что выполнены условия:
У вас есть доступ к панели Cloudflare с правами на изменение SSL/TLS.
На origin-сервере можно установить сертификат (Let's Encrypt, ZeroSSL, коммерческий).
Сервер слушает 443 порт и отдаёт контент по HTTPS.
Сертификат покрывает ваш домен (и www, если используется).
Сертификат не просрочен и подписан доверенным CA (для Strict).
У вас есть возможность откатить изменения, если что-то сломается.
Шаг 1. Проверьте текущий режим SSL
1. Войдите в панель Cloudflare. 2. Выберите нужный домен. 3. Перейдите в раздел SSL/TLS → Overview. 4. Посмотрите, какой режим активен: Off, Flexible, Full или Full (Strict).
Запишите текущее значение — это ваша точка отката.
Шаг 2. Проверьте, что отдаёт origin-сервер
Откройте терминал и выполните запрос напрямую к серверу, минуя Cloudflare:
curl -I https://IP_ВАШЕГО_СЕРВЕРА -H "Host: example.com" --insecureОбратите внимание на:
Отвечает ли сервер по HTTPS вообще.
Какой сертификат отдаёт (issuer, срок действия).
Нет ли ошибок TLS.
Если сервер не отвечает по HTTPS — сначала настройте сертификат, потом меняйте режим.
Шаг 3. Выпустите сертификат для origin
Самый простой путь — Let's Encrypt через certbot:
1. Установите certbot согласно документации вашего дистрибутива. 2. Выполните certbot certonly --standalone -d example.com -d www.example.com. 3. Certbot создаст файлы в /etc/letsencrypt/live/example.com/. 4. Пропишите пути к fullchain.pem и privkey.pem в конфигурации веб-сервера (Nginx, Apache). 5. Перезагрузите веб-сервер. 6. Проверьте автопродление: certbot renew --dry-run.
Альтернатива — Cloudflare Origin Certificate. Он бесплатный, действует до 15 лет, но принимается только Cloudflare. Для Full (Strict) он подходит, для прямого доступа к origin — нет.
Шаг 4. Настройте веб-сервер на HTTPS
Пример для Nginx:
server {
listen 443 ssl http2;
server_name example.com www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
...
}Убедитесь, что сервер отдаёт контент по HTTPS без ошибок. Проверьте через curl -I https://example.com --resolve example.com:443:IP_СЕРВЕРА.
Шаг 5. Переключите режим на Full (Strict)
1. В панели Cloudflare откройте SSL/TLS → Overview. 2. Выберите Full (Strict). 3. Сохраните.
Изменение применяется почти мгновенно, но кэш DNS и соединений может задержать эффект на несколько минут.
Шаг 6. Проверьте работу сайта
1. Откройте сайт в браузере в режиме инкогнито. 2. Убедитесь, что нет ошибок 525, 526, 522. 3. Проверьте цепочку сертификатов через SSL Labs: оценка должна быть A или A+. 4. Откройте DevTools → Security и посмотрите, какой сертификат видит браузер. 5. Проверьте, что редиректы работают корректно и нет циклов.
Шаг 7. Настройте редирект HTTP → HTTPS
Если вы использовали Flexible, на сервере мог быть отключён редирект, чтобы избежать цикла. Теперь его можно включить.
В Cloudflare: SSL/TLS → Edge Certificates → Always Use HTTPS — включите.
На сервере в Nginx добавьте отдельный server-блок для 80 порта с return 301 https://$host$request_uri;.
Шаг 8. Включите HSTS (опционально)
HSTS заставляет браузеры всегда использовать HTTPS для вашего домена. Включается в SSL/TLS → Edge Certificates → HSTS.
Важно: не включайте HSTS с большим max-age, пока не убедились, что всё работает. Откат HSTS занимает время — браузеры запоминают настройку.
Начните с max-age 300 секунд, затем увеличивайте.
Шаг 9. Проверьте смешанный контент
Даже при Full (Strict) страница может подгружать ресурсы по HTTP — это называется mixed content. Браузер будет блокировать такие ресурсы или помечать сайт как небезопасный.
1. Откройте DevTools → Console. 2. Найдите предупреждения о mixed content. 3. Замените ссылки на ресурсы с http:// на https:// или относительные. 4. В Cloudflare можно включить Automatic HTTPS Rewrites — он автоматически переписывает такие ссылки.
Шаг 10. Настройте Cloudflare Origin Certificate (альтернатива)
Если не хотите возиться с Let's Encrypt:
1. В Cloudflare откройте SSL/TLS → Origin Server. 2. Нажмите Create Certificate. 3. Выберите домены (example.com, *.example.com). 4. Скопируйте сертификат и приватный ключ. 5. Установите их на сервере. 6. Убедитесь, что сервер отдаёт этот сертификат.
Помните: Origin Certificate не будет работать, если вы отключите Cloudflare или обратитесь к серверу напрямую по HTTPS — браузер его не примет.
Шаг 11. Настройте Cloudflare Tunnel (для продвинутых)
Cloudflare Tunnel позволяет вообще не открывать origin-сервер в интернет. Трафик идёт через защищённое соединение, инициированное самим сервером.
1. Установите cloudflared на сервер. 2. Авторизуйтесь: cloudflared tunnel login. 3. Создайте туннель: cloudflared tunnel create my-tunnel. 4. Настройте конфиг с маршрутами на локальные сервисы. 5. Запустите туннель как сервис. 6. В Cloudflare DNS создайте CNAME на <tunnel-id>.cfargotunnel.com.
В этом случае режим SSL/TLS можно оставить Full (Strict) — туннель сам обеспечивает шифрование.
Шаг 12. Проверьте автообновление сертификата
Сертификат Let's Encrypt действует 90 дней. Убедитесь, что автопродление работает:
1. Проверьте таймер systemd или cron задачу certbot. 2. Выполните certbot renew --dry-run. 3. Настройте хук для перезагрузки веб-сервера после обновления.
Если сертификат истечёт, Full (Strict) перестанет работать — сайт отдаст ошибку 526.
Типичные ошибки
Ошибка 1. Оставить Flexible «потому что работает». Работает — не значит безопасно. Переходите на Full (Strict).
Ошибка 2. Включить Full (Strict) без сертификата на сервере. Получите ошибку 526. Сначала сертификат, потом режим.
Ошибка 3. Использовать самоподписанный сертификат с Full (Strict). Cloudflare его не примет. Нужен сертификат от доверенного CA или Origin Certificate.
Ошибка 4. Забыть про www. Сертификат должен покрывать и example.com, и www.example.com, иначе часть посетителей увидит ошибку.
Ошибка 5. Не проверить mixed content. Сайт может выглядеть нормально, но браузер будет блокировать часть ресурсов.
Ошибка 6. Включить HSTS слишком рано. Если что-то сломается, откатить будет сложно.
Ошибка 7. Забыть про автопродление. Через 90 дней сайт упадёт с ошибкой 526.
Ошибка 8. Оставить открытым HTTP-порт на сервере. При Full (Strict) лучше закрыть 80 порт или настроить редирект, чтобы никто не ходил напрямую по HTTP.
FAQ
В чём главная разница между Flexible и Full? Flexible шифрует только участок браузер → Cloudflare, а Cloudflare → сервер идёт по HTTP. Full шифрует оба участка.
Что выбрать: Full или Full (Strict)? Full (Strict) — если у вас валидный сертификат на сервере. Full — только как временное решение, если сертификат самоподписанный.
Можно ли использовать Flexible с Let's Encrypt на сервере? Технически да, но бессмысленно: Cloudflare всё равно будет ходить по HTTP. Включайте Full (Strict).
Почему после смены режима сайт выдаёт 526? Cloudflare не может проверить сертификат origin. Проверьте, что сертификат валиден, не просрочен и покрывает домен.
Нужен ли сертификат на сервере, если использую Cloudflare? Да, для Full и Full (Strict). Для Flexible — нет, но Flexible небезопасен.
Что такое Cloudflare Origin Certificate? Бесплатный сертификат от Cloudflare, который принимается только Cloudflare. Подходит для Full (Strict), но не для прямого доступа.
Влияет ли режим SSL на SEO? Косвенно. Google учитывает HTTPS, но при Flexible реальный origin остаётся HTTP, что может влиять на некоторые проверки.
Как откатить изменения, если что-то сломалось? Верните предыдущий режим в SSL/TLS → Overview. Изменение применяется за минуты.
Итог
Flexible SSL — это компромисс, который в 2026 году не имеет смысла для продакшена. Он оставляет трафик между Cloudflare и вашим сервером открытым, создаёт риски перехвата и подмены данных. Full (Strict) — стандарт, который обеспечивает шифрование на всём пути и проверку сертификата origin.
Переход занимает 15–30 минут: выпустить сертификат, настроить веб-сервер, переключить режим, проверить работу. Если хостинг не позволяет установить сертификат — используйте Cloudflare Origin Certificate или Tunnel. В любом случае не оставляйте сайт на Flexible дольше, чем нужно для миграции.
Читайте также
Комментарии
Комментарии доступны только зарегистрированным пользователям. Войти
- Пока нет комментариев. Будьте первым.



