Skip to content
EN
← Все статьи

TLS сертификат: что это, как получить и проверить для сайта

Серверная стойка и монитор со значком замка

TLS сертификат — это электронный документ, который подтверждает, что сайт действительно принадлежит указанному домену, и содержит открытый ключ для шифрования соединения. Браузер проверяет сертификат при каждом HTTPS-подключении: подпись удостоверяющего центра, срок действия и совпадение домена. Без него сайт открывается только по HTTP с пометкой «Не защищено».

TLS-сертификат: что это простыми словами

SSL/TLS — протокол шифрования, который защищает данные при передаче между браузером и сервером. HTTPS (HTTP over TLS) сегодня является стандартом для всех сайтов: браузеры помечают HTTP-сайты как небезопасные, а поисковики учитывают HTTPS как фактор ранжирования.

Сертификат в этой схеме — «паспорт» сервера. Внутри него записаны:

  • домены, для которых он выпущен (поле Subject Alternative Name, SAN);
  • открытый ключ сервера — парный к закрытому ключу, который хранится только на сервере;
  • издатель (Issuer) — удостоверяющий центр (УЦ, Certificate Authority), подписавший документ;
  • срок действия — даты Not Before и Not After;
  • подпись УЦ, по которой браузер понимает, что данные не подделаны.

Шифрует трафик не сам сертификат: при подключении стороны договариваются о временном сессионном ключе, а сертификат гарантирует, что договариваетесь вы именно с нужным сервером, а не с посредником.

SSL vs TLS — в чём разница

SSL (Secure Sockets Layer) — оригинальный протокол, созданный Netscape в 1990-х. TLS (Transport Layer Security) — его современный наследник. SSL 2.0 и 3.0 давно устарели и уязвимы. Сегодня актуальны:

ПротоколГодСтатус
SSL 2.01995Запрещён (уязвим)
SSL 3.01996Запрещён (POODLE)
TLS 1.01999Устарел (отключён в браузерах с 2020)
TLS 1.12006Устарел (отключён в браузерах с 2020)
TLS 1.22008Поддерживается (минимально рекомендуемый)
TLS 1.32018Рекомендуемый (быстрее, безопаснее)

Термин «SSL-сертификат» используется по привычке, хотя технически правильнее «TLS-сертификат». Спецификация актуальной версии протокола — RFC 8446 (TLS 1.3).

SSL и TLS сертификат — одно и то же?

Да. Отдельных «SSL-сертификатов» и «TLS-сертификатов» не существует: это один и тот же сертификат формата X.509. Версию протокола (TLS 1.2 или 1.3) определяет настройка сервера, а не купленный сертификат. Поэтому «SSL/TLS-сертификат», «сертификат безопасности сайта» и «TLS-сертификат для сайта» — одна и та же вещь.

Что сравниваем«SSL-сертификат»«TLS-сертификат»
Формат файлаX.509 (PEM, DER, PFX)X.509 (PEM, DER, PFX)
Кто выдаётУдостоверяющий центрТот же удостоверяющий центр
Какой протокол используетЛюбой, что включён на сервереЛюбой, что включён на сервере
Откуда названиеИсторическое, из 1990-хТехнически корректное
Можно ли «перейти с SSL на TLS» заменой сертификатаНет — отключаются старые протоколы в конфигурации сервера

Как работает TLS-хэндшейк

При установке HTTPS-соединения клиент и сервер проходят процедуру TLS-хэндшейка:

  1. Client Hello — клиент отправляет поддерживаемые версии TLS, шифры и случайное число
  2. Server Hello — сервер выбирает версию TLS и шифр, отправляет свой сертификат
  3. Проверка сертификата — клиент проверяет цепочку доверия, срок действия, соответствие домена
  4. Обмен ключами — стороны согласовывают сессионный ключ (обычно через ECDHE)
  5. Шифрованное соединение — дальнейший обмен данными зашифрован сессионным ключом

TLS 1.3 упрощает этот процесс до одного раунда (1-RTT), а при повторном подключении может установить соединение за 0-RTT. Подробный разбор каждого шага — в статье TLS-рукопожатие: как устанавливается защищённое соединение.

Типы сертификатов

По уровню проверки

ТипПроверкаДля кого
DV (Domain Validation)Только владение доменомБлоги, небольшие сайты, стартапы
OV (Organization Validation)Домен + существование организацииБизнес-сайты, корпоративные порталы
EV (Extended Validation)Полная проверка организацииБанки, финансовые сервисы, крупный бизнес

Шифрование у DV, OV и EV одинаковое — различается только глубина проверки владельца. Как выбрать под задачу, разобрано в статье Типы SSL-сертификатов: DV, OV, EV — какой выбрать.

По количеству доменов

  • Обычный — для одного домена (example.com)
  • Wildcard — для домена и всех поддоменов (*.example.com)
  • Multi-Domain (SAN) — для нескольких разных доменов в одном сертификате

Серверный и клиентский TLS-сертификат

Обычно под «сертификатом сервера TLS» понимают тот, что стоит на сайте. Но бывает и обратная схема — взаимная аутентификация (mTLS), когда сертификат предъявляет ещё и клиент: так устроен доступ к API банков, корпоративным VPN-шлюзам и части государственных систем.

Серверный сертификатКлиентский сертификат
Кто предъявляетСервер (сайт, API)Пользователь или приложение
Что подтверждаетПодлинность доменаЛичность или право доступа клиента
Где хранитсяНа сервере рядом с закрытым ключомВ хранилище ОС, браузера или на токене
Поле Extended Key UsageserverAuthclientAuth

Российские TLS-сертификаты: НУЦ Минцифры и ГОСТ

С 2022 года Национальный удостоверяющий центр (НУЦ) Минцифры выпускает отечественные TLS-сертификаты для российских организаций, которым зарубежные УЦ перестали их выдавать. Цепочка таких сертификатов начинается с корня Russian Trusted Root CA.

  • Кто может получить: российские юрлица — заявка подаётся через Госуслуги.
  • Кто им доверяет из коробки: Яндекс Браузер и Атом. Chrome, Firefox, Safari и Edge корня НУЦ в своих хранилищах не имеют, поэтому сайты с сертификатом только от НУЦ показывают в них ошибку доверия.
  • Как быть пользователю: установить корневой сертификат, опубликованный на странице сертификатов Госуслуг. Банки, включая Сбербанк, публикуют такие же инструкции для своих клиентов.
  • Как быть владельцу сайта: если аудитория пользуется разными браузерами, держать основным сертификат от общепризнанного УЦ, а сертификат НУЦ — дополнительно, если он требуется.

Отдельная история — сертификаты TLS ГОСТ: они подписаны по российским алгоритмам (ГОСТ Р 34.10-2012) и работают только с поддержкой отечественной криптографии — например, через КриптоПро CSP или «Континент TLS-клиент», который используют для доступа к ряду госсистем. Обычный браузер без такого ПО ГОСТ-сайт не откроет.

Как устроена цепочка НУЦ и как поставить корень в Windows, macOS и Linux, подробно описано в статье Российские SSL-сертификаты и УЦ: цепочка и установка корня.

Как установить корневые TLS-сертификаты на сервер

Если ваше приложение само ходит на сайты с сертификатами НУЦ (например, в API банка для эквайринга), корень нужно добавить в системное хранилище сервера:

# Debian / Ubuntu (файл в формате PEM с расширением .crt)
cp russian_trusted_root_ca.crt /usr/local/share/ca-certificates/
update-ca-certificates

# RHEL / AlmaLinux / Rocky
cp russian_trusted_root_ca.crt /etc/pki/ca-trust/source/anchors/
update-ca-trust

# Если файл скачан в формате DER — сначала конвертировать
openssl x509 -inform der -in russian_trusted_root_ca.cer -out russian_trusted_root_ca.crt

# Java-приложения используют собственное хранилище (пароль по умолчанию changeit)
keytool -importcert -alias russian_trusted_root -file russian_trusted_root_ca.crt -cacerts

Как получить TLS-сертификат для сайта

Путь зависит от того, какой сертификат нужен:

  1. Бесплатный DV — Let's Encrypt через certbot или встроенную функцию панели хостинга (ISPmanager, cPanel, Plesk). В Яндекс Облаке сертификаты Let's Encrypt выпускает сервис Certificate Manager.
  2. Платный DV/OV/EV — у удостоверяющего центра или реселлера. Вы генерируете закрытый ключ и запрос на сертификат (CSR), УЦ проверяет домен (DNS-запись, файл на сайте или письмо) и, для OV/EV, документы организации.
  3. Сертификат НУЦ Минцифры — заявка через Госуслуги от имени юрлица.

Запрос на TLS-сертификат (CSR) вместе с закрытым ключом создаётся одной командой:

openssl req -new -newkey rsa:2048 -nodes \
  -keyout example.com.key -out example.com.csr \
  -subj "/CN=example.com"

Файл .csr отправляете в УЦ, файл .key никому не передаёте: если закрытый ключ утёк, сертификат нужно отзывать и выпускать заново.

Let's Encrypt

Бесплатный центр сертификации, выдающий DV-сертификаты. Поддерживается всеми браузерами. Сертификаты действуют 90 дней и автоматически обновляются через certbot:

# Установка certbot
apt install certbot python3-certbot-nginx

# Получение сертификата
certbot --nginx -d example.com -d www.example.com

# Проверка автоматического обновления
certbot renew --dry-run

Certbot автоматически настроит nginx для HTTPS и добавит задачу (cron или systemd-таймер) для обновления. Пошаговая настройка с разбором ошибок — в статье Бесплатный SSL через Let's Encrypt: certbot за 10 минут.

Установка TLS-сертификата на сервер

Удостоверяющий центр присылает сертификат домена и промежуточные сертификаты. Серверу нужны три вещи: сертификат, цепочка и закрытый ключ.

СерверКуда прописать
nginxssl_certificate — сертификат + промежуточные в одном файле (fullchain), ssl_certificate_key — ключ
Apache 2.4.8+SSLCertificateFile — сертификат с цепочкой, SSLCertificateKeyFile — ключ
IIS (Windows Server)Импорт файла .pfx в «Сертификаты сервера», затем привязка https к сайту на порту 443

После правки конфигурации проверьте синтаксис (nginx -t или apachectl configtest) и перезагрузите сервер. Для nginx собрать fullchain вручную можно так: cat example.com.crt intermediate.crt > fullchain.pem — порядок важен, сертификат домена идёт первым.

Цепочка доверия

Сертификат вашего сайта подписан промежуточным сертификатом (intermediate), который подписан корневым (root). Браузер доверяет корневым CA из своего хранилища:

Root CA (в хранилище браузера)
  └── Intermediate CA (у Let's Encrypt сейчас R10 / R11)
        └── Ваш сертификат (example.com)

Важно: сервер должен отдавать полную цепочку (сертификат + intermediate). Если intermediate отсутствует, некоторые клиенты не смогут проверить сертификат. Актуальный список промежуточных сертификатов Let's Encrypt опубликован на странице Chains of Trust; как найти и починить неполную цепочку — в статье Цепочка сертификатов SSL: как проверить и починить неполную.

Распространённые ошибки

ERR_CERT_DATE_INVALID

Сертификат истёк или ещё не начал действовать. Решение: обновить сертификат, проверить настройку автообновления, убедиться что время на сервере корректное. Если ошибка только у одного пользователя, а у остальных сайт открывается, — проверьте дату и время на его компьютере.

ERR_CERT_COMMON_NAME_INVALID

Домен в адресной строке не совпадает с CN или SAN сертификата. Типичный случай: сертификат для example.com не покрывает www.example.com.

ERR_CERT_AUTHORITY_INVALID

Цепочка доверия не может быть проверена. Причины: самоподписанный сертификат, отсутствует промежуточный сертификат, CA не в хранилище браузера. К последнему случаю относятся и сайты с сертификатом только от НУЦ Минцифры, открытые в браузере без установленного корня.

NET_ERR_CERT_REVOKED

Сертификат отозван центром сертификации. Необходимо получить новый сертификат.

«Не найден подходящий TLS-сертификат»

Такое сообщение обычно выдаёт клиентское ПО в схемах с взаимной аутентификацией: сервер запросил клиентский сертификат, а в хранилище пользователя нет ни одного, выпущенного нужным УЦ или с действующим сроком. Проверьте, что личный сертификат установлен, не истёк и что установлена его цепочка до корня.

Mixed Content

Страница загружена по HTTPS, но содержит ресурсы по HTTP. Браузер может блокировать такие ресурсы. Решение: все URL должны использовать HTTPS — надёжнее явный https://, чем протокол-относительные пути (//).

Оптимальная конфигурация nginx

server {
    listen 443 ssl;
    http2 on;              # nginx 1.25.1+; в старых версиях — listen 443 ssl http2;
    server_name example.com;

    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/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;

    # OCSP Stapling — только для УЦ, у которых есть OCSP-респондер
    # ssl_stapling on;
    # ssl_stapling_verify on;
    # resolver 8.8.8.8 8.8.4.4 valid=300s;

    # HSTS
    add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
}

Let's Encrypt в 2025 году прекратил поддержку OCSP, поэтому для его сертификатов stapling ничего не даёт — nginx лишь предупредит в логе, что в сертификате нет адреса OCSP-респондера. Для сертификатов других УЦ блок можно раскомментировать. Директива http2 описана в документации nginx.

Как проверить TLS-сертификат

Быстрее всего — ввести домен в проверку SSL/TLS-сертификата: она покажет издателя, срок действия, список доменов в SAN, полноту цепочки и включённые версии протокола. Если сайт должен открываться только по HTTPS, проверьте ещё и цепочку редиректов с http:// на https://. Чтобы не пропустить истечение срока, поставьте домен на мониторинг — уведомление придёт заранее.

Для проверки сертификата из командной строки (Linux, macOS; в Windows — через OpenSSL из комплекта Git for Windows):

# Информация о сертификате
openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -dates -subject -issuer

# Проверка цепочки
openssl s_client -connect example.com:443 -servername example.com -showcerts

# Какие домены покрывает сертификат (OpenSSL 1.1.1+)
openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -ext subjectAltName

# Поддерживает ли сервер TLS 1.3
openssl s_client -connect example.com:443 -servername example.com -tls1_3

Флаг -servername обязателен: без него сервер с несколькими сайтами на одном IP может вернуть чужой сертификат, и проверка покажет не то.

Как удалить TLS-сертификат

  • Windows: Win+R → certmgr.msc → нужный раздел («Личное» или «Доверенные корневые центры сертификации») → «Сертификаты» → правой кнопкой по сертификату → «Удалить». Для хранилища компьютера — certlm.msc с правами администратора.
  • Сервер с certbot: certbot delete --cert-name example.com, после чего уберите ссылки на файлы из конфигурации nginx или Apache — иначе сервер не запустится.
  • Debian / Ubuntu (корневой сертификат): удалите файл из /usr/local/share/ca-certificates/ и выполните update-ca-certificates --fresh.

Частые вопросы

TLS-сертификат что это — если совсем коротко?

Файл, который подтверждает, что сайт принадлежит своему домену, и позволяет браузеру установить шифрованное HTTPS-соединение. Его подписывает удостоверяющий центр, которому доверяет браузер.

Нужен ли TLS-сертификат небольшому сайту без оплаты и форм?

Да. Без HTTPS браузеры помечают сайт как небезопасный, а провайдер или сеть по пути могут подменить содержимое страниц. Бесплатного сертификата Let's Encrypt для этого достаточно.

Чем платный сертификат лучше бесплатного?

Шифрование одинаковое. Платные OV и EV подтверждают организацию, а не только домен, дают более длинный срок действия и финансовую гарантию УЦ. Для большинства сайтов хватает бесплатного DV.

Нужно ли ставить российский сертификат НУЦ вместо обычного?

Только если зарубежный УЦ отказывает вашей организации или этого требует регулятор. Сертификат НУЦ из коробки понимают не все браузеры, поэтому обычно его используют вместе с общепризнанным, а не вместо него.

Как часто нужно обновлять TLS-сертификат?

До окончания срока, указанного в поле Not After. Максимальный срок публичных сертификатов постепенно сокращается по решению CA/Browser Forum, поэтому ручное продление становится неудобным — настройте автоматическое обновление и мониторинг срока.

Почему сертификат установлен, а браузер всё равно ругается?

Чаще всего сервер не отдаёт промежуточный сертификат, сертификат выпущен без www или на сервере остался старый файл после продления. Проверьте сайт через /ssl — отчёт покажет, какой из случаев ваш.

Проверьте ваш сайт прямо сейчас

Проверить SSL своего сайта →
Другие статьи: SSL/TLS
SSL/TLS
Сертификат Минцифры: как установить и вернуть доступ к банкам
31.08.2026 · 3 886 просм.
SSL/TLS
SSL Handshake Failed: причины ошибки и пошаговая диагностика
15.04.2026 · 2 697 просм.
SSL/TLS
ERR_CERT_AUTHORITY_INVALID: что значит и как исправить ошибку
13.07.2026 · 1 303 просм.
SSL/TLS
Бесплатный SSL через Let's Encrypt: certbot за 10 минут
15.04.2026 · 1 287 просм.