Без HTTPS современный сайт — не сайт. Настройка SSL-сертификата для сайта на Nginx — задача, которую нельзя отложить. Браузеры помечают его как небезопасный, Google снижает позиции, а API (PWA, Geolocation, Service Workers) перестают работать. Правильная установка SSL на Nginx включает выбор сертификата, настройку HSTS и OCSP Stapling. Transport Layer Security — протокол, обеспечивающий шифрование и целостность данных. Разберём, как настроить SSL/TLS сертификат для сайта на Nginx от начала до конца.
Мы решали задачи HTTPS для 200+ проектов — от простых DV-блогов до мультидоменных конфигураций с Wildcard. Типичные ошибки: неправильная цепочка или редирект 302 вместо 301. Оценим ваш проект за час бесплатно. Закажите настройку SSL — получите надёжную защиту.
Выбор SSL-сертификата по типу и задачам
| Тип | Верификация | Когда использовать |
|---|---|---|
| DV (Domain Validation) | Только домен | Большинство сайтов, блоги, лендинги |
| OV (Organization Validation) | Домен + организация | Корпоративные сайты, интернет-магазины |
| EV (Extended Validation) | Расширенная проверка | Банки, платёжные системы, госсайты |
Wildcard *.example.ru |
Все поддомены | Мультисубдоменная архитектура (blog, api, app) |
| Multi-domain (SAN) | Несколько доменов | Холдинги, несколько проектов на одном IP |
Для большинства: Let's Encrypt DV (бесплатно) или платный аналог от Comodo/Sectigo. Бесплатный сертификат экономит до 15 000 рублей в год по сравнению с платным.
Основные проблемы, решаемые настройкой SSL
HSTS — заголовок, предписывающий браузеру использовать только HTTPS. Без него возможна атака SSL stripping — перенаправление на HTTP. Мы включаем HSTS с параметром max-age=63072000; includeSubDomains; preload. Это обеспечивает, что даже при первом заходе браузер сразу использует HTTPS, исключая атаки SSL stripping.
Почему HSTS критичен для безопасности? Потому что он исключает возможность перехвата трафика на этапе первого подключения. Без HSTS браузер может временно перейти на HTTP, и злоумышленник этим воспользуется.
OCSP Stapling ускоряет проверку статуса сертификата. Сервер сам запрашивает у OCSP-ответчика подтверждение и передаёт его браузеру, минуя задержки. Без Stapling браузер делает отдельный запрос, увеличивая TTFB. Включаем ssl_stapling on в Nginx.
Let's Encrypt vs платные сертификаты: что выбрать?
| Критерий | Let's Encrypt | Платный DV (Comodo, Sectigo) |
|---|---|---|
| Стоимость | Бесплатно | От нескольких тысяч рублей в год |
| Срок действия | 90 дней (автопродление) | 1-2 года |
| ACME-поддержка | Полная | Частичная |
| Wildcard | Да | Да (платно) |
| Поддержка | Сообщество, форумы | 24/7 от вендора |
Для обычных сайтов Let's Encrypt — оптимальный выбор. Платные нужны для OV/EV или если клиент требует поддержки от вендора. По скорости настройки Let's Encrypt выигрывает в 3-5 раз — весь процесс занимает менее часа.
Как работает OCSP Stapling?
OCSP Stapling — техника, при которой сервер периодически запрашивает OCSP-ответ и "сшивает" его с сертификатом. Браузеру не нужно обращаться к OCSP-серверу самостоятельно. Это снижает TTFB и повышает приватность, так как браузер не сообщает OCSP-серверу, какие сайты посещает. Для корректной работы stapling необходимо указать доверенный сертификат: ssl_trusted_certificate. Рекомендуется использовать резолверы Cloudflare (1.1.1.1) или Google (8.8.8.8). Без stapling каждый клиент делает отдельный запрос к OCSP-серверу, что увеличивает TTFB. Правильная настройка может сократить время загрузки на 100-200 мс.
Процесс настройки SSL: от анализа до деплоя
Используем Certbot для Let's Encrypt или OpenSSL для платных. Стек: Nginx на Ubuntu, TLSv1.2/1.3, современные шифры (ECDHE+AESGCM). Мониторинг: SSL Labs, Prometheus.
Процесс:
- Аудит текущей конфигурации — ищем неправильные редиректы, смешанный контент.
- Выбор типа сертификата (DV/OV/EV/Wildcard) с учётом бизнес-задач.
- Генерация CSR и закрытого ключа.
- Установка сертификата на сервер с тестированием.
- Настройка HSTS, OCSP Stapling, ssl_session_cache.
- Настройка HTTP → HTTPS редиректа (301).
- Проверка в SSL Labs (цель — A+).
- Документация по продлению и закладка в мониторинг.
Что входит в настройку SSL под ключ?
- Аудит текущей HTTPS-конфигурации
- Выбор оптимального типа сертификата (DV, OV, EV, Wildcard)
- Генерация CSR и установка сертификата
- Настройка HSTS, OCSP Stapling, шифров и протоколов
- Редирект HTTP на HTTPS (301)
- Тестирование через SSL Labs (оценка A+)
- Инструкция по продлению и мониторингу
- Часовая пост-деплой консультация
Стоимость настройки SSL под ключ — от 5 000 до 15 000 рублей в зависимости от сложности. Закажите настройку SSL — получите бесплатную оценку проекта за час.
Пример конфигурации Nginx
server { listen 443 ssl http2; server_name example.ru www.example.ru; ssl_certificate /etc/letsencrypt/live/example.ru/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.ru/privkey.pem; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384; ssl_prefer_server_ciphers off; add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always; ssl_stapling on; ssl_stapling_verify on; resolver 8.8.8.8 1.1.1.1 valid=300s; ssl_trusted_certificate /etc/letsencrypt/live/example.ru/chain.pem; ssl_session_cache shared:SSL:10m; ssl_session_timeout 1d; ssl_session_tickets off; } server { listen 80; server_name example.ru www.example.ru; return 301 https://example.ru$request_uri; } Установка платного сертификата
# Генерация CSR openssl req -new -newkey rsa:2048 -nodes \ -keyout example.ru.key \ -out example.ru.csr \ -subj "/C=RU/ST=Moscow/L=Moscow/O=Компания ООО/CN=example.ru" # Далее загружаем CSR в панель УЦ, проходим верификацию, получаем сертификат. # В Nginx указываем пути: # ssl_certificate /etc/ssl/example.ru/fullchain.crt; # ssl_certificate_key /etc/ssl/example.ru/example.ru.key; Проверка SSL-конфигурации: методы и инструменты
- SSL Labs — полный анализ, цель A+.
-
openssl s_client -connect example.ru:443— ручная проверка. -
curl -vI https://example.ru— заголовки и TLS.
Типичные ошибки при настройке SSL
- Неправильная цепочка сертификатов: часто забывают установить промежуточные. Проверяем
openssl s_client -showcerts. - Редирект 302 вместо 301: поисковики не обновляют индексы. Используем 301.
- Смешанный контент: HTTPS-страница загружает скрипты по HTTP. Браузер блокирует. Проверяем через DevTools.
- Устаревшие протоколы: оставляют TLSv1.0/1.1 — уязвимости. Отключаем, оставляем v1.2/1.3.
Свяжитесь с нами для консультации — мы поможем выбрать оптимальный сертификат и настроим всё под ключ. Закажите настройку SSL — получите бесплатную оценку проекта за час.







