Перейти к содержимому
К
SSL

Let's Encrypt: как работает автопродление и почему оно ломается

Сертификат Let's Encrypt действует 90 дней и продлевается без участия человека: программа на сервере примерно за 30 дней до окончания срока заново подтверждает, что домен ваш, и получает новый сертификат. Ломается автопродление тогда, когда это подтверждение перестаёт проходить — после переезда на другой хостинг, смены DNS, подключения CDN или новых редиректов. Ниже разберём, как устроен механизм, из-за чего он отказывает, как проверить его заранее и что делать, если сертификат уже не продлился.

Как работает автопродление Let's Encrypt

Let's Encrypt изменил рынок: бесплатный сертификат, который ставится за минуту и продлевается сам. Сегодня им защищена большая часть сайтов малого бизнеса. У него один нюанс, который забывают в момент установки: сертификат действует 90 дней, и если автопродление тихо сломалось, узнаёте вы об этом, когда сайт начинает пугать клиентов красным экраном.

Сертификат выдаётся после проверки, что вы контролируете домен. Проверка автоматическая: сервис просит разместить на вашем сервере специальный файл или добавить запись в DNS, затем сам его проверяет. Если всё на месте — сертификат выдан. На сервере при этом живёт небольшая программа, которая раз в сутки проверяет срок и за 30 дней до конца повторяет процедуру заново. Обычно всё это делает панель хостинга, и владелец сайта ничего не видит.

На собственном сервере эту роль выполняет программа-клиент — чаще всего Certbot или acme.sh. По расписанию она смотрит, сколько осталось до конца срока, при необходимости запрашивает новый сертификат, кладёт его на место старого и даёт веб-серверу команду перечитать настройки. Если любое звено этой цепочки выпадает, продление не происходит, и никто об этом не сообщает.

Как Let's Encrypt проверяет, что домен ваш

Способов проверки два, и от того, какой из них используется у вас, зависит, что именно может сломаться.

СпособКак проходит проверкаКогда применяютЧто её ломает
По файлу на сайтеСервис запрашивает служебный файл по адресу вида /.well-known/acme-challenge/ через порт 80Обычный сайт на одном сервереПереезд, редиректы, пароль на сайте, CDN и внешняя защита, закрытый порт 80
По записи в DNSСервис ищет в DNS домена служебную TXT-записьСертификаты на все поддомены, сайты за CDN, серверы без доступа из интернетаСмена DNS-хостинга, устаревший ключ доступа к DNS, запись, которую добавляли вручную

Проверка по DNS обязательна для сертификата, который покрывает сразу все поддомены, — о нём мы писали в статье про wildcard-сертификат. Что такое TXT-запись и где её искать, объясняется в материале про DNS-записи.

Почему сертификат действует всего 90 дней

Короткий срок жизни — не недостаток, а принцип: чем быстрее сертификат истекает, тем меньше ущерб, если ключ утёк. Но это же означает, что цепочка проверки должна работать каждые два-три месяца без сбоев.

Рассчитывать на то, что сроки станут длиннее, не стоит: отрасль в целом движется к более коротким сертификатам, в том числе платным. Продлевать их руками по напоминанию в календаре всё менее реально, поэтому надёжная автоматика и контроль за ней — обязательная часть настройки сайта.

Почему автопродление ломается

Сертификат не продлевается, когда проверка владения доменом не проходит. Причины почти всегда одни и те же.

  • Сайт переехал на другой хостинг. Программа продления осталась на старом сервере, а домен уже смотрит на новый. Проверка идёт на новый сервер, где никто её не ждёт.
  • Сменили DNS или подключили CDN и защиту от DDoS. Запрос на проверку теперь приходит через посредника, и файл проверки не находится.
  • Настроили редиректы. Например, весь трафик отправляется на www-версию или на другую страницу, включая служебный адрес проверки.
  • Закрыли сайт паролем или доступом по IP на время разработки. Проверяющий сервер тоже не может войти.
  • Обновили сервер или панель, и служба продления перестала запускаться. Никаких сообщений — просто перестала.
  • Домен истёк или DNS-записи ведут не туда. Частый случай — забытая запись для IPv6, которая всё ещё указывает на старый сервер.
  • Закрыли порт 80. Его отключают «ради безопасности», а проверка по файлу начинается именно с него.
  • Сертификат продлился, но сервер об этом не узнал. Новый файл лежит на диске, а веб-сервер продолжает отдавать старый, пока его не перезапустят.

Показательный случай: клиент подключил защиту от DDoS через внешний сервис. Всё работало два месяца — ровно до момента продления. Сертификат не обновился, сайт стал «небезопасным» за день до старта рекламной кампании. Проверка не проходила через фильтр, потому что он отдавал свою страницу вместо файла подтверждения.

Как проверить, что автопродление работает

  1. Нажмите на замок в браузере и посмотрите срок действия сертификата. Если до конца меньше 30 дней и он не обновился — продление уже не работает.
  2. Загляните в раздел SSL в панели хостинга: там видно, какой сертификат установлен, до какой даты он действует и включено ли автоматическое продление.
  3. Если сервер свой, попросите администратора выполнить пробное продление. У Certbot для этого есть команда certbot renew --dry-run: она проходит всю процедуру проверки, но не выпускает сертификат.
  4. Поставьте внешний мониторинг сертификата. Бесплатные сервисы мониторинга умеют предупреждать за две недели до истечения. Как выбрать и настроить такой сервис, описано в статье про мониторинг сайта.
  5. После любого переезда, смены DNS, подключения CDN или защиты сразу запускайте продление вручную и убедитесь, что оно проходит.

На письма-напоминания рассчитывать не стоит. Раньше Let's Encrypt предупреждал по почте о скором истечении, но в 2025 году отказался от этой рассылки. Следить за сроком теперь нужно самим — поэтому внешний мониторинг из пожелания превратился в необходимость.

Что делать, если сертификат не продлился: пошагово

  1. Зайдите в панель хостинга, найдите раздел SSL и нажмите перевыпуск или продление. Если проходит — проблема была разовой.
  2. Если выдаёт ошибку — читайте текст: там будет написано, что именно не удалось проверить. Чаще всего это тот самый файл, который не удаётся получить из-за редиректа или фильтра.
  3. Проверьте, куда указывает домен. IP-адрес в DNS должен совпадать с адресом сервера, на котором выпускается сертификат; посмотреть записи можно в нашей проверке домена.
  4. Откройте доступ к служебному адресу: снимите пароль с сайта, исключите путь /.well-known/ из редиректов и правил защиты, убедитесь, что порт 80 открыт.
  5. Если сайт стоит за CDN или внешней защитой, настройте там пропуск служебного адреса либо перейдите на проверку через DNS.
  6. Запустите выпуск ещё раз. Не повторяйте попытки десятки раз подряд: у сервиса есть ограничения на число запросов, и при частых ошибках он на время перестаёт их принимать.
  7. Откройте сайт в браузере и проверьте по замку новую дату. Если дата старая, перезапустите веб-сервер.
  8. Верните временно снятые ограничения и сразу поставьте мониторинг срока.

Пока сертификат не действует, посетители видят полноэкранное предупреждение, а реклама ведёт на «опасный» сайт. Что именно происходит в это время и чем оно грозит, мы подробно описали в статье что будет, если истёк SSL.

Что проверить после переезда, смены DNS или подключения CDN

  • Сертификат выпущен на новом сервере, а не перенесён файлом со старого.
  • На новом сервере включено автоматическое продление.
  • Записи DNS, включая запись для IPv6, ведут на актуальный сервер.
  • Служебный адрес проверки не попадает под редиректы, пароль и правила защиты.
  • Пробное или ручное продление проходит без ошибок.
  • Сертификат покрывает все нужные имена: с www и без, рабочие поддомены.
  • Срок сертификата добавлен во внешний мониторинг.

Этот список стоит держать рядом с планом любого переезда. Остальные шаги — перенос файлов, базы и переключение домена — собраны в статье о том, как выполнить перенос сайта на другой хостинг.

Частые ошибки владельцев сайтов

  • Считают бесплатный сертификат вечным. Поставили один раз и забыли, хотя каждые три месяца он выпускается заново.
  • Продлевают руками. Ручное продление по напоминанию работает до первого отпуска или смены подрядчика.
  • Следят только за доступностью сайта. Сайт с истёкшим сертификатом для обычного мониторинга «работает», а посетители на него не попадают.
  • Забывают про поддомены. Основной сайт продлился, а сертификат личного кабинета или почтового адреса — нет.
  • Меняют инфраструктуру и не проверяют продление. Ошибка проявится только через недели, когда уже никто не помнит, что меняли.
  • Не знают, где настроено продление. В панели хостинга, у подрядчика или на сервере — это должно быть записано вместе с остальными доступами.

Когда лучше платный сертификат

Let's Encrypt подходит большинству сайтов. Платный с годовым сроком имеет смысл, когда инфраструктура сложная: несколько серверов, балансировщики, корпоративные системы, где каждое продление — это согласования. Или когда нужна проверка организации для доверия в B2B. В остальных случаях бесплатный сертификат плюс мониторинг — разумный выбор. Подробное сравнение — в статье бесплатный или платный SSL.

Коротко

Автопродление Let's Encrypt — это повторная проверка домена каждые два-три месяца. Она молча ломается после переездов, смены DNS, подключения CDN и новых редиректов. Защищают от этого две привычки: проверять продление после каждого изменения и держать срок сертификата под внешним мониторингом.

На сайтах, которые мы в CasperLab ведём на поддержке, срок сертификата отслеживает мониторинг, а после каждого изменения инфраструктуры мы проверяем продление руками. Если бесплатного варианта вам недостаточно, посмотрите SSL-сертификаты с проверкой организации. А если ваш сайт уже однажды краснел из-за истёкшего сертификата, приходите — настроим так, чтобы это не повторилось.

Выбрать SSL в CasperLab

Поможем подобрать решение под вашу задачу и рассчитаем стоимость без обязательств.

Выбрать SSL
Поделиться:
Почему сертификат Let's Encrypt действует всего 90 дней?
Это сознательное решение сервиса: короткий срок снижает ущерб при утечке ключа и заставляет автоматизировать продление. При работающем автопродлении владелец сайта срок вообще не замечает.
Как проверить, что автопродление работает?
Посмотрите срок сертификата через замок в браузере: продление происходит примерно за 30 дней до конца. Если до истечения осталось меньше месяца, а дата не обновилась, — автопродление сломано. Надёжнее всего поставить внешний мониторинг сертификата.
После переезда на другой хостинг сертификат не продлился — что делать?
Выпустить новый сертификат в панели нового хостинга. Старый сервер уже не отвечает за домен, поэтому его программа продления работать не будет. После выпуска убедитесь, что автопродление включено на новом сервере.
Нужно ли платить за продление Let's Encrypt?
Нет. И первый выпуск, и каждое продление бесплатны, количество продлений не ограничено. Платить приходится только за работу специалиста, если автоматику нужно настроить или починить.
Как продлить сертификат Let's Encrypt вручную?
На хостинге с панелью — кнопкой перевыпуска или продления в разделе SSL. На собственном сервере администратор запускает продление командой программы-клиента, например certbot renew. Если проверка домена не проходит, сначала устраняют причину, указанную в тексте ошибки.
Присылает ли Let's Encrypt напоминание об окончании срока?
Раньше присылал, но в 2025 году сервис отключил письма о скором истечении сертификата. Поэтому рассчитывать стоит только на собственный контроль: мониторинг срока сертификата и уведомления панели хостинга, если она их отправляет.