До основного вмісту

Як підключити безкоштовний SSL-сертифікат

Хостинг та cPanel · 01.02.2025 · 5 хв читання
Ілюстрація до статті «Як підключити безкоштовний SSL-сертифікат»

Безкоштовний SSL на ZevsHost

Всі тарифи включають безкоштовний SSL-сертифікат Let's Encrypt з автопродовженням кожні 90 днів. Продовження відбувається автоматично фоновим завданням AutoSSL — стежити за терміном дії вручну не потрібно, поки домен вказує на сервери ZevsHost і DNS-записи не змінювалися сторонньо.

Активація в cPanel

  1. Увійдіть у cPanel
  2. Знайдіть розділ «Security» → «SSL/TLS»
  3. Натисніть «Manage SSL Sites»
  4. Оберіть домен і натисніть «Autofill by Domain»
  5. Натисніть «Install Certificate»

Якщо домен щойно додано і DNS ще не встиг поширитися, AutoSSL не зможе пройти перевірку домену (HTTP validation) і відкладе випуск сертифіката до наступного циклу перевірки — зазвичай це кілька годин.

Примусовий HTTPS

Щоб перенаправляти всіх відвідувачів на HTTPS, додайте до .htaccess:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Реальні помилки SSL і що вони означають

Якщо сертифікат не підходить домену, браузер показує:

NET::ERR_CERT_COMMON_NAME_INVALID
ERR_SSL_PROTOCOL_ERROR

Перша помилка означає, що сертифікат випущено на інше ім'я — наприклад, встановлено лише для yourdomain.com, а сайт відкривають через www.yourdomain.com. Потрібно перевипустити сертифікат з обома варіантами імені через «Autofill by Domain», який додає www автоматично без ручного редагування списку імен. Друга помилка виникає, коли браузер намагається відкрити HTTPS-з'єднання на порт, де сертифікат взагалі не встановлено, або сервер віддає лише HTTP. Ще одне часте повідомлення — попередження про змішаний вміст у консолі розробника:

Mixed Content: The page at 'https://yourdomain.com/' was loaded over
HTTPS, but requested an insecure image 'http://yourdomain.com/logo.png'

Воно не блокує сторінку повністю, але браузер позначає сайт як «не повністю захищений», прибираючи зелений замок. Причина — жорстко прописані http:// посилання на картинки, скрипти чи стилі в коді шаблону, а не в самому SSL-сертифікаті.

Let's Encrypt і платний SSL: порівняння

ПараметрLet's Encrypt (AutoSSL)Платний DV/OV/EV
ВартістьБезкоштовноВід кількох $ на рік
Термін дії90 днів, автопродовження1–2 роки, продовження вручну
Перевірка організаціїНемає (лише домен)Є в OV і EV
Wildcard-піддомениПотребує DNS-валідаціїПідтримується майже завжди

Різниця між рівнями перевірки DV, OV і EV детально розібрана в статті про типи SSL-сертифікатів.

Як перевірити термін дії сертифіката вручну

Хоча AutoSSL продовжує сертифікат сам, корисно вміти перевірити дату закінчення напряму, не покладаючись лише на листи від cPanel — листи про продовження іноді потрапляють у спам-фільтр поштової скриньки адміністратора:

echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -dates

Команда виведе два рядки: notBefore — дату випуску, і notAfter — дату закінчення. Якщо до notAfter лишилося менше тижня, а AutoSSL мовчить, варто вручну зайти в «SSL/TLS Status» у cPanel і запустити перевірку — іноді цикл автопродовження пропускає домен через тимчасовий збій DNS-валідації в момент перевірки.

Коли безкоштовного SSL недостатньо

  • Потрібен сертифікат з перевіркою організації (OV) чи розширеною перевіркою (EV) для фінансових чи юридичних сервісів
  • Потрібен wildcard-сертифікат на необмежену кількість піддоменів одразу — на спільному хостингу це вимагає окремого налаштування DNS-валідації, не завжди доступного через інтерфейс cPanel
  • Сайт використовує зовнішній CDN чи проксі (наприклад, Cloudflare) у режимі, що вимагає сумісного origin-сертифіката — тут застосовується окрема логіка випуску
  • Потрібен сертифікат строком на 1–2 роки без автопродовження — наприклад, для вбудованих пристроїв, які звіряють термін дії вручну
  • Сайт працює через реверс-проксі чи балансувальник навантаження з власним термінуванням TLS — AutoSSL cPanel у цьому разі взагалі не бачить домену і не може пройти перевірку

Перевірка

  1. Перейдіть на сайт через HTTPS. В адресному рядку браузера має з'явитися замок
  2. Перевірте ланцюжок сертифіката командою openssl s_client -connect yourdomain.com:443 -servername yourdomain.com
  3. Переконайтеся, що HTTP-версія сайту редиректить на HTTPS, а не віддає вміст напряму: curl -I http://yourdomain.com має повернути код 301

Якщо після встановлення сертифіката залишаються попередження про змішаний вміст, розбір і виправлення таких посилань — у статті про Mixed Content HTTPS. Для посилення захисту після перевірки редиректу варто підключити HSTS — див. статтю про HSTS: примусовий HTTPS.

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

Чи треба самостійно продовжувати безкоштовний SSL-сертифікат?

Ні, сертифікат Let's Encrypt подовжується автоматично фоновим завданням AutoSSL, поки домен вказує на сервери хостингу і DNS-записи не змінювалися сторонньо. Стежити за датою закінчення вручну не обов'язково, та варто час від часу перевіряти її напряму через консоль, адже лист про подовження здатен загубитися у спам-фільтрі поштової скриньки адміністратора.

Чому сертифікат не випускається одразу після додавання нового домену?

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

Чи підійде безкоштовний SSL, коли сайт працює через зовнішній CDN чи проксі?

Не завжди: така схема вимагає сумісного сертифіката на вихідному сервері і використовує окрему логіку випуску, відмінну від звичайної активації через панель керування. Коли ж перед сайтом стоїть власний реверс-проксі чи балансувальник навантаження з власним завершенням TLS-з'єднання, служба автоматичного випуску взагалі не бачить домену і не здатна підтвердити володіння ним.

Чому після встановлення сертифіката браузер усе одно попереджає про змішаний вміст?

Таке попередження не пов'язане із самим сертифікатом: воно з'являється, коли у коді шаблону жорстко прописані незахищені посилання на картинки, скрипти чи стилі. Сторінка й надалі відкривається, проте браузер прибирає зелений замок і позначає з'єднання як не повністю захищене, доки усі подібні посилання у коді не виправлять на захищені.

Чи була стаття корисною?
← Назад до бази знань Поставити питання підтримці