SSL-сертификат
SSL-сертификат (цифровой сертификат безопасности) — это электронный документ по стандарту X.509, подписанный доверенным удостоверяющим центром (Certificate Authority), который связывает криптографический открытый ключ с конкретным доменным именем и его владельцем. Наличие установленного на веб-сервере SSL-сертификата подтверждает подлинность интернет-ресурса, активирует защищенный протокол HTTPS, включает сквозное шифрование сессий пользователей и является обязательным условием доверия современных браузеров и поисковых систем.
Анатомия сертификата и международный стандарт X.509
Каждый SSL/TLS-сертификат формируется в строгом соответствии со спецификацией ITU-T X.509 v3 (RFC 5280). Это структурированная цифровая запись, содержащая ключевые криптографические атрибуты:
- Субъект (Subject): имя домена, для которого выдан документ (Common Name,
CN=site.ru), а также данные компании-владельца (для корпоративных сертификатов).
- Альтернативные имена (SAN — Subject Alternative Name): список всех доменных адресов и поддоменов, защищаемых данным сертификатом (например,
site.ru и www.site.ru).
- Открытый ключ (Public Key): публичная часть асимметричной пары ключей (RSA 2048/4096 бит или ECDSA на эллиптических кривых P-256), используемая браузером для шифрования сессионного ключа.
- Эмитент и цифровая подпись CA: данные удостоверяющего центра и криптографический хеш, подтверждающий подлинность документа и отсутствие изменений.
- Срок действия (Validity Period): временное окно валидности. В рамках актуальных стандартов CA/Browser Forum максимальный срок действия сертификата ограничен 398 днями (с тенденцией к сокращению до 90 дней).
Жизненный цикл: от генерации CSR до выпуска
Процедура получения доверенного сертификата проходит через строгий криптографический регламент:
Этапы создания и верификации:
1. Генерация приватного ключа (Private Key): создается на сервере владельца и никогда не передается во внешнюю сеть (права chmod 600).
2. Формирование CSR (Certificate Signing Request): запрос на подпись, содержащий открытый ключ и реквизиты домена по стандарту PKCS#10.
3. Валидация центром сертификации: проверка прав на домен или юридического статуса компании.
4. Выпуск цепочки сертификатов: генерация конечного сертификата и промежуточных звеньев (Intermediate CA).
Форматы файлов: наиболее распространен текстовый формат PEM (.pem, .crt) с кодировкой Base64, применяемый в Linux и Nginx, а также бинарный контейнер PKCS#12 (.pfx), объединяющий сертификат и закрытый ключ под паролем для сред Windows/IIS.
Уровни валидации: DV, OV и EV
В зависимости от требуемой степени доверия и назначения ресурса удостоверяющие центры выпускают три класса сертификатов:
- DV (Domain Validation): проверка исключительно права владения доменным именем. Подтверждается добавлением DNS-записи TXT, размещением проверочного файла по пути
/.well-known/acme-challenge/ или через email. Сертификаты DV выпускаются автоматизировано за несколько минут (Let’s Encrypt, ZeroSSL).
- OV (Organization Validation): проверка юридического лица. CA запрашивает выписки из госреестров (ЕГРЮЛ), сверяет данные в международных каталогах (D&B) и совершает контрольный телефонный звонок. В свойствах сертификата отображается официальное наименование организации.
- EV (Extended Validation): углубленный аудит бизнеса с проверкой фактического ведения коммерческой деятельности и банковских реквизитов, востребованный крупными банками и платежными шлюзами.
Охват доменов: Single, Wildcard и Multi-Domain
По архитектуре защищаемых адресов сертификаты подразделяются на три ключевые группы:
Типы охвата инфраструктуры:
• Single Domain: защита одного конкретного доменного имени (как правило, включая поддомен www).
• Wildcard (*.domain.ru): универсальный сертификат, защищающий основной домен и все его поддомены первого уровня за счет маски со звездочкой.
• Multi-Domain (SAN / UCC): единый сертификат, позволяющий включить до 250 совершенно разных доменных имен, управляемых на одном сервере.
Технология SNI (Server Name Indication): передает имя запрашиваемого домена в стартовом TLS-пакете, позволяя веб-серверу выбирать нужный сертификат из сотен установленных на одном общем IP-адресе.
Цепочка доверия, CT-логи и Национальный УЦ
Браузер не знает каждый сайт в интернете лично. Проверка базируется на иерархической цепочке доверия (Chain of Trust):
- Иерархия CA: конечный сертификат сайта (Leaf) подписан промежуточным центром (Intermediate CA), который заверен доверенным корневым центром (Root CA), жестко встроенным в хранилище операционной системы или браузера.
- Certificate Transparency (CT Logs): открытые публичные реестры, куда удостоверяющие центры обязаны вносить информацию обо всех выпущенных сертификатах. Это предотвращает скрытый выпуск поддельных сертификатов злоумышленниками.
- Сертификаты НУЦ Минцифры РФ: отечественные корневые сертификаты (Russian Trusted Root CA), обеспечивающие бесперебойный доступ к российским сервисам, госуслугам и банковским шлюзам при отзыве зарубежных подписей. Они нативно встроены в Яндекс Браузер и Atom.
Проверка отзыва: CRL, OCSP и OCSP Stapling
Если закрытый ключ сайта скомпрометирован или владелец сменился, сертификат должен быть досрочно отозван:
Механизмы контроля валидности:
Исторический механизм CRL (скачивание громоздких списков отозванных сертификатов) уступил место протоколу OCSP — точечным онлайн-запросам статуса. Для устранения задержек применяется OCSP Stapling: веб-сервер сам опрашивает CA и прикрепляет подписанный штамп к рукопожатию.
Настройка в FastPanel и CMS Joomla: в конфигурации Nginx обязательно указывается файл полной цепочки fullchain.pem (конечный + промежуточные сертификаты) через директиву ssl_certificate. Пропуск промежуточного звена приводит к ошибкам SSL_ERROR_UNKNOWN_ISSUER_ROOT на мобильных устройствах.
В CMS Joomla включается директива принудительного HTTPS для всего сайта (параметр force_ssl = 2 в configuration.php), активируя автоматический редирект и безопасный режим работы сессионных cookie.
SSL