Браузер показывает замок в адресной строке — или красный предупреждающий значок. Разница между этими двумя состояниями определяется одним компонентом: SSL-сертификатом. Без него сайт помечается как небезопасный, данные пользователей передаются в открытом виде, а поисковые системы понижают такие страницы в выдаче.
Разбираемся, как выпустить сертификат самостоятельно — от выбора типа до проверки готовой установки.
Что такое SSL-сертификат и зачем он нужен сайту
SSL-сертификат — это цифровой документ, который подтверждает: сайт принадлежит тому, кем он представляется, а соединение между браузером и сервером зашифровано. Именно он обеспечивает работу протокола HTTPS.
Когда пользователь вводит данные в форму на сайте без сертификата, эта информация передаётся в открытом виде. Любой, кто находится между пользователем и сервером — например, оператор публичной Wi-Fi-сети — может её перехватить. С HTTPS данные шифруются и становятся нечитаемыми для третьих лиц.
Помимо защиты данных, SSL-сертификат влияет на ранжирование в поисковых системах: Google и Яндекс учитывают наличие HTTPS как один из факторов качества сайта. Сайты без сертификата браузеры Chrome, Firefox и Safari помечают явным предупреждением «Небезопасно».
Основные виды сертификатов: какой выбрать
Сертификаты различаются по двум параметрам: кто их подписал и насколько глубоко проверен владелец домена.
Самоподписанный vs. доверенный
Самоподписанный сертификат можно выпустить самостоятельно — технически это несложно. Но браузер не доверяет таким сертификатам: он всё равно покажет предупреждение, потому что никто независимый не подтвердил подлинность сайта. Такие сертификаты используют только во внутренних сетях. Для публичного сайта нужен сертификат от доверенного центра сертификации (CA — Certificate Authority).
Domain Validation — проверка домена
Центр сертификации проверяет только то, что заявитель управляет доменом. Выпускается за несколько минут. Подходит для большинства сайтов: блогов, лендингов, корпоративных страниц, интернет-магазинов.
Organization Validation — проверка организации
Дополнительно проверяется существование юридического лица: документы, телефон, адрес. Занимает несколько дней. Используется компаниями, которым важно показать название организации в сведениях о сертификате.
Extended Validation — расширенная проверка
Самый строгий уровень: центр сертификации тщательно проверяет компанию. Раньше браузеры показывали зелёную строку с названием организации, но сейчас большинство браузеров отказались от этой визуализации. Актуален для банков и финансовых сервисов.
Для большинства сайтов достаточно DV-сертификата. Он обеспечивает полноценное шифрование и убирает предупреждения браузера — этого достаточно для защиты пользователей и доверия поисковых систем.
Подготовительный этап: генерация CSR-запроса
CSR (Certificate Signing Request) — это файл с запросом на выпуск сертификата. Он содержит информацию о домене и публичный ключ. Центр сертификации использует CSR, чтобы выпустить сертификат именно для вашего сервера.
CSR генерируется на сервере или через панель управления хостингом. При генерации создаётся пара: CSR-запрос (отправляется в центр сертификации) и приватный ключ (остаётся на сервере, никуда не передаётся).
Генерация CSR через OpenSSL
Выполняется в командной строке на сервере. Команда создаёт приватный ключ и CSR одновременно.
openssl req -new -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr
После выполнения команды система задаст несколько вопросов: страна (RU), регион, город, название организации, и главное — Common Name, то есть доменное имя (например, example.ru). Для сертификата с поддержкой поддоменов указывают *.example.ru.
Если сервер управляется через панель хостинга
В cPanel, ISPmanager и других панелях управления есть раздел SSL/TLS, где CSR генерируется через форму. Вводить команды вручную не нужно — панель делает то же самое в несколько кликов.
Где получить сертификат: центры сертификации и бесплатные решения
Сертификаты выдают центры сертификации — организации, которым браузеры доверяют по умолчанию. Их список встроен в каждый браузер и операционную систему.
Let's Encrypt — бесплатно и автоматически
Некоммерческий центр сертификации, который выдаёт DV-сертификаты бесплатно. Сертификаты действуют 90 дней и продлеваются автоматически через утилиту Certbot. Поддерживается большинством хостингов — часто достаточно одной кнопки в панели управления. Подробнее о бесплатных SSL-сертификатах для разных задач.
Коммерческие центры: Sectigo, DigiCert, GlobalSign
Платные сертификаты актуальны, если нужен OV или EV, Wildcard (для всех поддоменов сразу), или гарантия с компенсацией в случае проблем. Стоимость — от нескольких тысяч рублей в год. В России сертификаты можно купить у реселлеров — Reg.ru, Timeweb, Selectel и других хостингов.
Сертификаты от хостинга
Большинство современных хостингов подключают SSL прямо из панели управления — как правило, это Let's Encrypt с автопродлением. Для большинства владельцев сайтов это самый простой вариант: не нужно разбираться с командной строкой и CSR.
Процедура подтверждения прав на домен
Прежде чем выпустить сертификат, центр сертификации проверяет, что заявитель действительно управляет доменом. Есть три способа подтверждения.
| Способ | Как работает | Когда удобен |
|---|---|---|
| На адрес admin@, webmaster@ или из WHOIS-записи домена приходит письмо со ссылкой для подтверждения | Когда есть доступ к почте домена | |
| HTTP-файл | Нужно разместить на сервере специальный файл по указанному пути. Центр сертификации проверяет его наличие | Когда есть доступ к файлам сервера |
| DNS-запись | В DNS-зону домена добавляется TXT-запись с уникальным значением. Центр сертификации проверяет её наличие | Для Wildcard-сертификатов и когда нет доступа к файлам сервера |
Для большинства случаев удобнее HTTP-метод или DNS. Email-подтверждение требует, чтобы у домена была настроена почта — это есть не у всех.
Выпуск и скачивание готовых файлов сертификата
После подтверждения прав на домен центр сертификации выпускает сертификат. Обычно это происходит автоматически — от нескольких минут до нескольких часов (для OV/EV — дольше).
В результате вы получаете несколько файлов. Важно понимать, что каждый из них делает.
Сертификат домена (.crt или .pem)
Основной файл сертификата. Содержит публичный ключ и подпись центра сертификации.
Цепочка промежуточных сертификатов (ca-bundle или chain)
Связывает сертификат домена с корневым сертификатом центра сертификации. Без неё браузер может не распознать сертификат как доверенный.
Приватный ключ (.key)
Был создан на этапе генерации CSR и остался у вас. Никуда не отправляется и не публикуется. Это секретный файл — если он попадёт к третьим лицам, сертификат нужно отозвать и перевыпустить.
Особенности установки на разные типы серверов
Установка сертификата — это добавление полученных файлов в конфигурацию веб-сервера. Для Nginx и Apache процедура немного отличается. Подробная инструкция для каждого типа сервера описана в полном руководстве по установке и настройке SSL-сертификата.
Nginx
В конфигурационный файл виртуального хоста добавляются три директивы:
ssl_certificate /etc/ssl/yourdomain.crt; ssl_certificate_key /etc/ssl/yourdomain.key; ssl_trusted_certificate /etc/ssl/ca-bundle.crt;
После изменения конфигурации нужно перезагрузить Nginx: nginx -t (проверка), затем systemctl reload nginx.
Apache
В конфигурацию VirtualHost добавляются директивы SSLEngine:
SSLEngine on SSLCertificateFile /etc/ssl/yourdomain.crt SSLCertificateKeyFile /etc/ssl/yourdomain.key SSLCertificateChainFile /etc/ssl/ca-bundle.crt
После изменений: apachectl configtest, затем systemctl reload apache2.
Если сайт на конструкторе или общем хостинге
Доступа к конфигурационным файлам нет, но это не нужно. В панели управления хостингом (cPanel, ISPmanager, Plesk) есть раздел для управления SSL, куда вставляются содержимое файлов сертификата, ключа и цепочки — через обычную форму.
Проверка корректности работы и настройка переадресации на HTTPS
После установки нужно убедиться, что сертификат работает правильно. Быстрый способ — открыть сайт в браузере и посмотреть на замок в адресной строке. Клик по замку показывает информацию о сертификате: кем выдан, до какой даты действует.
Для детальной проверки используют онлайн-инструменты. SSL Labs (ssllabs.com/ssltest) анализирует конфигурацию и показывает оценку от A до F, а также выявляет уязвимости.
Настроить редирект с HTTP на HTTPS
Сам по себе сертификат не переводит сайт на HTTPS. Нужно настроить редирект, чтобы все запросы по HTTP автоматически перенаправлялись на HTTPS-версию. Для Nginx: директива return 301 https://$host$request_uri; в блоке server с портом 80. Для Apache — правила в .htaccess через RewriteRule.
Проверить наличие смешанного контента
Если на HTTPS-странице есть ссылки на HTTP-ресурсы (картинки, скрипты, стили), браузер блокирует их или показывает предупреждение. Это называется смешанным контентом (mixed content). Все внутренние ссылки нужно привести к относительным или явно заменить HTTP на HTTPS.
Обновить адрес сайта в системах аналитики
В Google Search Console, Яндекс Вебмастере и настройках систем аналитики нужно указать новый основной адрес — с https://. Это важно для корректного сбора статистики и индексации.
Что делать, если срок действия сертификата истекает
Срок действия большинства сертификатов — 1 год (коммерческие) или 90 дней (Let's Encrypt). Когда сертификат истекает, браузеры начинают показывать предупреждение, которое фактически блокирует доступ для обычных пользователей.
Если на сайте уже появилось предупреждение об истёкшем сертификате, это типичная ошибка SSL-сертификата — она решается перевыпуском и переустановкой.
Автопродление через Certbot
Если сертификат выдан Let's Encrypt и установлен через Certbot, можно настроить автоматическое продление через cron или systemd timer. Команда certbot renew проверяет срок действия и продлевает, если осталось меньше 30 дней.
Напоминания на email
Коммерческие центры сертификации и хостинги отправляют письма о скором истечении сертификата — обычно за 30, 14 и 7 дней. Важно, чтобы email был актуальным и не уходил в спам.
Мониторинг через внешние сервисы
Сервисы мониторинга SSL (например, SSL Shopper или UptimeRobot) периодически проверяют срок действия и присылают уведомления. Полезно для проектов, где истечение сертификата критично — интернет-магазины, сервисы с авторизацией.
Риски работы сайта без SSL-сертификата серьёзнее, чем кажется: помимо предупреждений браузера, это прямая угроза для данных пользователей и репутации сайта. Настроенное автопродление полностью снимает вопрос своевременности — это один раз настроить и не возвращаться.
Частые вопросы
Можно ли выпустить сертификат бесплатно для коммерческого сайта?
Нужен ли отдельный сертификат для каждого поддомена?
Что будет, если приватный ключ попадёт к посторонним?
Влияет ли SSL-сертификат на скорость сайта?
Как выпустить сертификат, если нет доступа к серверу?
Главное
Выпуск SSL-сертификата — это последовательность из нескольких шагов: выбор типа сертификата, генерация CSR-запроса, подтверждение прав на домен, получение файлов и их установка на сервер. Для большинства сайтов весь процесс занимает от нескольких минут до получаса.
Бесплатный Let's Encrypt закрывает потребности большинства проектов. Настроенное автопродление снимает вопрос мониторинга срока действия.
После установки важно проверить редирект с HTTP на HTTPS и убедиться в отсутствии смешанного контента — только тогда замок в браузере будет зелёным без оговорок.