Налаштування Let's Encrypt з автоматичним оновленням SSL

Користувачі часто забувають продовжити SSL-сертифікат — і сайт стає недоступним через HTTPS, втрачаючи довіру відвідувачів і позиції в пошуку. За статистикою, 80% власників сайтів хоча б раз стикалися з простроченням SSL, а середній збиток від простою становить 10% конверсії на день. Одного разу до

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Налаштування Let's Encrypt з автоматичним оновленням SSL
Простий
від 4 годин до 2 днів

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1419
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1287
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    983
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1244
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    983
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    998

Користувачі часто забувають продовжити SSL-сертифікат — і сайт стає недоступним через HTTPS, втрачаючи довіру відвідувачів і позиції в пошуку. За статистикою, 80% власників сайтів хоча б раз стикалися з простроченням SSL, а середній збиток від простою становить 10% конверсії на день. Одного разу до нас прийшов клієнт: його інтернет-магазин працював на wildcard-сертифікаті, але оновлення не було налаштоване, і через 90 днів сайт почав видавати помилку NET::ERR_CERT_DATE_INVALID. Втрати в день становили близько 10% виручки, поки ми не налаштували автоматичне оновлення за годину. Ми налаштовуємо автоматичне оновлення Let's Encrypt за допомогою Certbot під ключ за 30–60 хвилин. Наш досвід — понад п'ять років в інфраструктурній безпеці та більше сотні налаштованих доменів. Це виключає простої та економить бюджет на комерційних сертифікатах.

Чому автоматичне оновлення критичне?

Ручне оновлення SSL — часта причина інцидентів. Навіть якщо ви пам'ятаєте про 90 днів, легко пропустити точну дату. Certbot автоматизує процес: перевіряє сертифікати двічі на день і продовжує їх за 30 днів до завершення. Це знижує ризик прострочення до 0,01% за умови правильного налаштування. Без автооновлення ви ризикуєте не лише втратити конверсію, а й впасти у видачі — Google та Яндекс штрафують сайти з невалідним HTTPS.

Як ми налаштовуємо Let's Encrypt: повний цикл

Процес включає кілька етапів:

  1. Встановлення Certbot з плагінами для вашої ОС та веб-сервера.
  2. Отримання сертифіката — HTTP або DNS challenge.
  3. Налаштування автооновлення через systemd timer або cron з post-hook.
  4. Перевірка оновлення (dry-run) та верифікація.
  5. Конфігурація Nginx з HSTS, OCSP stapling.
  6. Моніторинг терміну дії та сповіщення.

Для wildcard-сертифікатів обов'язково використовуємо DNS challenge — це єдиний спосіб покрити всі піддомени без відкриття порту 80. Розберемо кожен етап детальніше на прикладі налаштування з Cloudflare.

Встановлення Certbot

# Ubuntu/Debian apt install certbot python3-certbot-nginx # CentOS/RHEL dnf install certbot python3-certbot-nginx # Універсально через Snap snap install --classic certbot ln -s /snap/bin/certbot /usr/bin/certbot 

Отримання сертифіката (HTTP та DNS)

# Автоматично править nginx конфіг certbot --nginx -d example.ru -d www.example.ru # Тільки отримати сертифікат (без зміни nginx) certbot certonly --nginx -d example.ru -d www.example.ru # Wildcard сертифікат — тільки через DNS challenge certbot certonly --manual --preferred-challenges=dns -d example.ru -d *.example.ru 

Для wildcard потрібно додати TXT-запис _acme-challenge.example.ru в DNS. Ми автоматизуємо це через плагіни, наприклад, certbot-dns-cloudflare.

Як інтегрувати DNS challenge з популярними провайдерами?

DNS challenge через API — найнадійніший спосіб для wildcard. Ось приклад налаштування для Cloudflare:

  1. Встановіть плагін: pip install certbot-dns-cloudflare.
  2. Створіть ini-файл з API-токеном: dns_cloudflare_api_token = ваш_токен.
  3. Запустіть: certbot certonly --dns-cloudflare --dns-cloudflare-credentials /path/to/cloudflare.ini -d example.ru -d *.example.ru.

Плагін автоматично додасть і видалить TXT-запис. Аналогічно налаштовуються Route53, DigitalOcean та інші провайдери.

Порівняння методів перевірки

Характеристика HTTP-01 challenge DNS-01 challenge
Порт 80 не потрібен
Wildcard ні так
Залежність від DNS ні так (API)
Автоматизація простіше через плагіни
Надійність 90% (порт може бути закритий) 99% (через DNS API)

DNS challenge в 10 разів надійніший за HTTP — не залежить від веб-сервера і працює, навіть якщо сайт тимчасово недоступний.

Як налаштувати автооновлення: systemd timer чи cron?

Certbot автоматично додає systemd timer або cron при встановленні. Перевіряємо працездатність:

systemctl list-timers | grep certbot certbot renew --dry-run 

Якщо хук не додався автоматично — пропишіть в crontab:

0 3 * * * certbot renew --quiet --post-hook "systemctl reload nginx" 

--post-hook перезавантажує Nginx після оновлення сертифіката — без цього старий сертифікат залишиться в пам'яті процесів.

Порівняння методів автооновлення

Критерій systemd timer cron
Залежність від systemd так ні
Легкість налагодження складніше (journalctl) простіше (syslog)
Гнучкість розкладу висока (календар) обмежена
Надійність висока (onCalendar+OnFailure) середня (оточення може бути відсутнє)

Ми рекомендуємо systemd timer на сучасних системах, оскільки він більш передбачуваний.

Як уникнути типових помилок?

Одна з частих помилок — відсутність --post-hook для перезавантаження веб-сервера. Клієнт налаштував cron, сертифікат оновлювався, але Nginx продовжував тримати старий. Після додавання --post-hook "systemctl reload nginx" проблема зникла. Ще один момент: якщо використовуєте systemd timer, перевірте, що сервіс certbot.service активований.

Конфігурація Nginx після certbot

server { listen 443 ssl; server_name example.ru www.example.ru; ssl_certificate /etc/letsencrypt/live/example.ru/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.ru/privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always; ssl_stapling on; ssl_stapling_verify on; } 

Моніторинг терміну дії

Перевірка через OpenSSL: openssl x509 -enddate -noout -in /etc/letsencrypt/live/example.ru/cert.pem. Підключаємо моніторинг через Prometheus blackbox_exporter або UptimeRobot зі сповіщенням за 7 днів до завершення. Це гарантує, що навіть при збої автооновлення ви дізнаєтеся про проблему заздалегідь.

Що входить у налаштування SSL у нас

  • Встановлення та конфігурація Certbot під ваш стек (Nginx, Apache).
  • Вибір та налаштування challenge (HTTP або DNS) з автоматизацією.
  • Налаштування systemd timer або cron з post-hook.
  • Перевірка оновлення та пробний прогін.
  • Конфігурація Nginx з HSTS, OCSP stapling.
  • Моніторинг терміну дії та сповіщення.
  • Документація та підтримка протягом 30 днів.

Який результат ви отримаєте?

Повністю автоматизоване SSL-оновлення без ризику прострочення. Економія на комерційних сертифікатах. І жодних ручних операцій — все працює само. Замовте налаштування, і ми оцінимо ваш проект за 1 день. Отримайте консультацію щодо вашого проекту.

Сертифікати Let's Encrypt видаються на 90 днів, що відповідає стандарту ACME.