Ошибки при выборе SSL-сертификата
SSL-сертификат — это просто. Купил, установил, работает. Но на практике возникает множество нюансов: не тот тип сертификата, забытый редирект, смешанный контент, просроченный сертификат. Каждая ошибка приводит к проблемам: браузер ругается, пользователи уходят, SEO падает.
В этой статье — 7 типичных ошибок при выборе и настройке SSL. Если нужно настроить SSL правильно — поможем.
1. Неверный тип сертификата
Одна из главных ошибок — покупка сертификата, который не подходит проекту. Разберём типичные случаи.
Что происходит
- Купили DV для корпоративного сайта: клиенты не видят подтверждения организации;
- Купили обычный SSL для множества поддоменов: придётся покупать отдельные сертификаты;
- Купили Wildcard для нескольких разных доменов: Wildcard работает только для поддоменов одного домена;
- Купили EV для личного блога: переплата за функции, которые не нужны;
- Купили Multi-Domain для одного домена: переплата за возможность, которая не используется.
Как избежать
- Определите задачи: сколько доменов, нужны ли поддомены, нужна ли проверка организации;
- Оцените уровень доверия: DV для личных сайтов, OV для бизнеса, EV для банков;
- Проверьте покрытие: Wildcard — для поддоменов, Multi-Domain — для разных доменов;
- Проконсультируйтесь: если сомневаетесь — задайте вопрос специалисту.
💡 Важно
Для большинства сайтов достаточно DV или Let's Encrypt. Платные сертификаты нужны, когда требуется подтверждение организации или расширенная защита.
2. Нет редиректа на HTTPS
SSL установлен, но сайт доступен и по HTTP, и по HTTPS. Это создаёт проблемы.
Что происходит
- Дубли страниц: поисковики видят два адреса — плохо для SEO;
- Пользователи попадают на HTTP: не видят зелёный замок;
- Ссылки в интернете: старые ссылки ведут на HTTP-версию;
- Размытие авторитета: ссылки распределяются между двумя версиями;
- Потеря трафика: пользователи уходят с «небезопасной» версии.
Как исправить
- Apache: в .htaccess добавить RewriteCond и RewriteRule для 301-редиректа;
- Nginx: в server-блоке для порта 80 добавить return 301 https://$host$request_uri;
- Проверка: откройте сайт по http:// — должен перекинуть на https://;
- Канонические URL: убедитесь, что канонический URL указывает на HTTPS.
3. Смешанный контент
Страница загружается по HTTPS, но некоторые элементы (картинки, скрипты) — по HTTP. Браузеры блокируют такие элементы и показывают предупреждение.
Причины
- Старые ссылки в контенте: http:// вместо https://;
- Внешние скрипты: подключены по HTTP;
- Изображения с других сайтов: по HTTP;
- Шрифты и CSS: не обновлены на HTTPS;
- Виджеты: социальные кнопки, карты, встроенные видео.
Как исправить
- Проверка: откройте консоль браузера — увидите все HTTP-запросы;
- Сервисы: Why No Padlock, JitBit SSL Checker покажут смешанный контент;
- Замена ссылок: найти все http:// и заменить на https:// (или относительные);
- Скрипты: проверить подключения внешних JS и CSS;
- Проверка: после исправлений — снова проверить консоль.
💡 Важно
Современные браузеры блокируют смешанный контент по умолчанию — сайт может выглядеть сломанным. Проверяйте консоль после установки SSL.
4. Забытое продление
Самый простой способ потерять SSL — забыть продлить. Сертификат истекает, сайт перестаёт открываться по HTTPS, браузеры показывают ошибку.
Что происходит
- Браузеры показывают предупреждение: пользователи уходят;
- SEO падает: HTTPS перестаёт работать;
- Восстановление требует времени: срочно выпускать новый сертификат;
- Репутация страдает: клиенты видят ошибку безопасности;
- Потери выручки: каждый час простоя — потерянные заказы.
Как избежать
- Автопродление: для Let's Encrypt — через ACME-клиент (Certbot, acme.sh);
- Панель хостинга: ISPmanager, cPanel имеют встроенную поддержку автопродления;
- Мониторинг: сервисы вроде SSL Labs, UptimeRobot проверяют срок действия;
- Напоминания: большинство CA отправляют уведомления за 30, 14, 7 дней;
- Внутренний мониторинг: скрипты, проверяющие срок действия всех сертификатов.
5. Слабая конфигурация
SSL установлен, но конфигурация устарела. Даже с валидным сертификатом сайт может быть уязвим.
Что происходит
- Старые протоколы: SSLv3, TLS 1.0, TLS 1.1 — уязвимы;
- Слабые шифры: RC4, 3DES — небезопасны;
- Нет HSTS: браузеры не форсируют HTTPS;
- Нет OCSP Stapling: медленнее проверка сертификата;
- Слабые DH-параметры: уязвимы для атак;
- Нет forward secrecy: компрометация ключа раскрывает прошлый трафик.
Как исправить
- Протоколы: только TLS 1.2 и TLS 1.3;
- Шифры: современные, с forward secrecy (ECDHE);
- HSTS: добавить заголовок Strict-Transport-Security;
- OCSP Stapling: включить для ускорения;
- DH-параметры: сгенерировать свои 2048+ бит;
- Проверка: SSL Labs — оценка A или A+.
6. Отсутствие цепочки сертификатов
SSL-сертификаты работают по цепочке: сайт → промежуточный → корневой. Если промежуточный сертификат не установлен, браузеры не могут проверить подлинность.
Что происходит
- Сайт не открывается: браузер не доверяет сертификату;
- Ошибка на мобильных: некоторые устройства требуют полную цепочку;
- Оценка SSL Labs: снижается из-за неполной цепочки;
- Пользователи уходят: ошибка безопасности отпугивает.
Как исправить
- Получить цепочку: от CA или через сервис What's My Chain Cert?;
- Apache: указать SSLCertificateChainFile с промежуточными сертификатами;
- Nginx: объединить сертификат и цепочку в один файл;
- Проверка: через SSL Labs, openssl s_client;
- Мобильные: проверить на iOS и Android.
7. Отсутствие HSTS
HSTS (HTTP Strict Transport Security) — заголовок, который заставляет браузер использовать только HTTPS. Без него возможны определённые атаки.
Что происходит
- Возможны downgrade-атаки: злоумышленник перенаправляет на HTTP;
- Пользователь может попасть на HTTP: если вводит http:// вручную;
- Cookie не защищены: могут передаваться по HTTP;
- SSL-стриппинг: классическая атака MITM.
Как исправить
- Заголовок:
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload; - Nginx: add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
- Apache: Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";
- Preload: после проверки можно добавить в preload-список браузеров;
- Осторожно: не включайте preload, пока не уверены в конфигурации.
💡 Важно
HSTS — это «блокировка на будущее». После включения preload браузеры запомнят домен и не позволят использовать HTTP. Включайте только после полной настройки HTTPS.
Наши рекомендации
Что вы получаете, заказывая аудит SSL у нас
- Проверку сертификата — валидность, цепочка
- Проверку конфигурации — протоколы, шифры, HSTS
- Проверку редиректа — HTTP → HTTPS
- Проверку смешанного контента — все HTTP-запросы
- Отчёт — что исправить и как
- Помощь — с настройкой и исправлением
📌 Итоговый вывод
Ошибки при выборе SSL дорого обходятся.
Что нужно знать:
- Неверный тип: переплата или недостаточная защита;
- Нет редиректа: пользователи попадают на HTTP;
- Смешанный контент: браузеры блокируют элементы;
- Забытое продление: сайт перестаёт открываться;
- Слабая конфигурация: уязвимости, низкая оценка SSL Labs;
- Нет цепочки: браузеры не доверяют сертификату;
- Нет HSTS: возможны downgrade-атаки.
Также рекомендуем: зачем нужен SSL, виды SSL-сертификатов, Let's Encrypt, установка SSL, продление SSL, SSL-сертификаты.