Открыть сервис

Let’s Encrypt

Let’s Encrypt — это некоммерческий центр сертификации, предоставляющий бесплатные цифровые сертификаты X.509 для протокола TLS. Проект запущен в 2016 году и управляется некоммерческой организацией Internet Security Research Group (ISRG). Основная цель Let’s Encrypt — автоматизировать процесс получения и обновления сертификатов, сделав HTTPS-шифрование доступным для всех владельцев веб-сайтов без финансовых и технических барьеров.

История

Идея создания бесплатного и автоматизированного центра сертификации возникла в 2012 году у группы исследователей и инженеров из Mozilla, Electronic Frontier Foundation (EFF) и Мичиганского университета. В 2013 году была основана организация Internet Security Research Group (ISRG) для управления проектом. Первая публичная бета-версия Let’s Encrypt запущена 3 декабря 2015 года, а полный запуск состоялся 12 апреля 2016 года.

Ключевым этапом развития стало внедрение протокола ACME (Automatic Certificate Management Environment) в 2016 году, который стандартизировал автоматическое взаимодействие между сервером и центром сертификации. В 2018 году Let’s Encrypt начал поддержку сертификатов с подстановочными знаками (wildcard), что упростило защиту субдоменов. К 2020 году проект выдал более 1 миллиарда сертификатов, став крупнейшим центром сертификации в мире по количеству активных сертификатов.

Принцип работы

Let’s Encrypt использует протокол ACME для автоматического подтверждения владения доменом. Процесс получения сертификата включает три этапа:

  1. Регистрация: клиент (например, ACME-клиент Certbot) создаёт учётную запись в центре сертификации.
  2. Подтверждение владения доменом: центр сертификации проверяет, что запрашивающий контролирует домен. Для этого используются два основных метода:
  • HTTP-01: на сервере размещается специальный файл по пути /.well-known/acme-challenge/. Центр сертификации проверяет его доступность.
  • DNS-01: в DNS-запись домена добавляется TXT-запись с определённым значением. Этот метод позволяет получить сертификаты для подстановочных доменов.
  1. Выдача сертификата: после успешной проверки центр сертификации подписывает сертификат и отправляет его клиенту.

Сертификаты Let’s Encrypt имеют срок действия 90 дней. Это сделано для повышения безопасности: короткий срок жизни снижает риск использования скомпрометированных сертификатов и стимулирует автоматизацию обновления.

Технические характеристики

  • Тип сертификатов: сертификаты X.509 с использованием алгоритмов RSA (2048-битные ключи) и ECDSA (P-256, P-384).
  • Цепочка сертификатов: Let’s Encrypt использует корневой сертификат ISRG Root X1, который признаётся большинством операционных систем и браузеров. Промежуточные сертификаты (R3, E1) подписываются корневым сертификатом.
  • Поддержка протоколов: TLS 1.2 и TLS 1.3.
  • Срок действия: 90 дней.
  • Количество сертификатов: не ограничено, но действуют лимиты на количество запросов в неделю (50 сертификатов на домен) и на количество проверок (5 неудачных попыток в час на домен).
  • Подстановочные сертификаты: поддерживаются с 2018 года.

Клиенты и инструменты

Основным официальным клиентом является Certbot (разработан EFF). Он автоматизирует установку, обновление и настройку сертификатов на веб-серверах Apache, Nginx и других. Другие популярные ACME-клиенты включают:

  • acme.sh — лёгкий shell-скрипт, поддерживающий множество DNS-провайдеров.
  • lego — клиент на Go, используемый в контейнерных средах.
  • Caddy — веб-сервер со встроенной поддержкой Let’s Encrypt.
  • Traefikобратный прокси-сервер с автоматическим получением сертификатов.

Многие хостинг-провайдеры и панели управления (cPanel, Plesk, ISPmanager) интегрировали Let’s Encrypt в свои интерфейсы, позволяя получать сертификаты без использования командной строки.

Применение

Let’s Encrypt используется для защиты веб-сайтов, API, почтовых серверов и других сервисов, использующих TLS. Основные сценарии:

  • Веб-сайты: обеспечение HTTPS-соединения для всех страниц, включая статические сайты, блоги, интернет-магазины.
  • API: защита RESTful и GraphQL API, особенно в микросервисных архитектурах.
  • Почтовые серверы: шифрование SMTP, IMAP и POP3 (например, с помощью сертификатов для Postfix, Dovecot).
  • VPN и другие сервисы: использование для OpenVPN, WireGuard, а также для внутренних корпоративных систем.

Благодаря бесплатности и автоматизации, Let’s Encrypt сыграл ключевую роль в массовом переходе на HTTPS. По данным отчёта ISRG за 2023 год, более 80% всех веб-сайтов, использующих HTTPS, получают сертификаты от Let’s Encrypt.

Критика и ограничения

Несмотря на популярность, проект имеет ряд ограничений и критических замечаний:

  • Короткий срок действия: 90 дней требует регулярного обновления, что может быть проблемой для статических сайтов без автоматизации.
  • Зависимость от DNS-провайдеров: метод DNS-01 требует доступа к управлению DNS-записями, что не всегда возможно для пользователей с ограниченными правами.
  • Лимиты: ограничения на количество запросов могут затруднить массовое развёртывание сертификатов в крупных сетях.
  • Безопасность корневого сертификата: если корневой сертификат ISRG будет скомпрометирован, это затронет миллионы сайтов. Однако ISRG принимает меры для защиты, включая использование аппаратных модулей безопасности (HSM) и регулярные аудиты.
  • Отсутствие поддержки расширенных сертификатов (EV): Let’s Encrypt не выдаёт сертификаты с расширенной проверкой (Extended Validation), которые требуют ручного подтверждения юридического статуса организации.

Влияние на интернет

Let’s Encrypt считается одним из самых значимых проектов в области интернет-безопасности. Он способствовал резкому росту доли HTTPS-трафика: по данным Mozilla, в 2015 году менее 40% загружаемых страниц в Firefox использовали HTTPS, а к 2023 году этот показатель превысил 95%. Проект также стимулировал развитие стандарта ACME, который был принят как RFC 8555 в 2019 году.

Интересные факты

  • Название «Let’s Encrypt» переводится как «Давайте зашифруем».
  • Проект финансируется за счёт грантов и пожертвований от таких организаций, как Mozilla, Google, Amazon, Cisco, а также от частных лиц.
  • В 2022 году ISRG запустила проект Divvi Up, который предоставляет бесплатные сервисы для сбора статистики с использованием технологии дифференциальной конфиденциальности.
  • Let’s Encrypt поддерживает IPv6 и работает с серверами, расположенными в нескольких дата-центрах по всему миру.

Источники

  1. Официальный сайт Let’s Encrypt — letsencrypt.org
  2. RFC 8555 — Automatic Certificate Management Environment (ACME)
  3. Отчёт Internet Security Research Group за 2023 год
  4. Статья «Let’s Encrypt: An Automated Certificate Authority to Encrypt the Entire Web» (Aas et al., 2019)
  5. Документация Certbot — certbot.eff.org

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →