SSL-сертифікат захищає від перехоплення цінну інформацію, яку люди вводять у вас на сайті: паролі, адреси електронної пошти, деталі карти.
Більшість сертифікатів коштують грошей, але є і безкоштовні варіанти. Let’s Encrypt — один з них, але взагалі, таких проектів кілька.
У цій статті розбираємося, як отримати сертифікат Let’s Encrypt і перевести сайт на HTTPs двома способами: за допомогою додатка в панелі управління хостингом cPanel і вручну в командному рядку.
Але спочатку коротко — про те, як з’явився цей проект і чому люди досі використовують платні сертифікати, якщо є безкоштовні.
Зміст
- Історія Let’s Encrypt
- Let’s Encrypt або платний сертифікат
- Отримання SSL-сертифіката Let’s Encrypt в cPanel
- Отримання SSL-сертифіката Let’s Encrypt в командному рядку
SSL-сертифiкати Let’s Encrypt припинили розпiзнаватися на старих пристроях
З 30 вересня 2021 на деяких пристроях сайти з сертифiкатами Let’s Encrypt будуть вiдкриватися з попередженням, що на сайтi небезпечно. Це пов’язано з тим, що компанiя перейшла на новий кореневий сертифiкат, якому поки що не довiряють деякi пристрої. Через це сайт з Let’s Encrypt i може вiдображуватися як ненадiйний. Навiть якщо насправдi з ним усе в порядку.
Детальнiше на цю тему читайте у статтi в нашому блогу. Там ви також знайдете список пристроїв, на яких Let’s Encrypt не буде працювати. А щоб швидко вирiшити проблему з сумiснiстю ви можете встановити на сайтi платний сертифiкат.
Подивитися сертифiкатиІсторія Let’s Encrypt
Проект Let’s Encrypt придумали два співробітника Mozilla у 2012 році, щоб у всіх була можливість безкоштовно отримати сертифікат і перевести сайт на HTTPs.
Це некомерційний проект, який існує за рахунок спонсорів на кшталт Facebook, Google, Mozilla, Cisco, HP enterprise.
Перший сертифікат компанія випустила в 2015 році. У грудні цього ж року проект запустився для всіх.
Зараз Let’s Encrypt – найпопулярніший центр сертифікації в світі. За даними з офіційного сайту компанії в світі 158 мільйонів активних сертифікатів Let’s Encrypt, а за весь час компанія випустила вже більше мільярда сертифікатів.

На скріншоті сертифікати Let’s Encrypt представлені в основному як IdenTrust, а не як Let’s Encrypt. Це тому що в 2015 році компанії уклали договір.
На те щоб все ОС і браузери почали довіряти новому сертифікату, можуть піти роки. Тому незадовго після випуску першого сертифіката, Let’s Encrypt перехресно підписала свої проміжні сертифікати з сертифікатом вже відомого центру сертифікації — IdenTrust. Після цього сертифікати Let’s Encrypt стали розпізнавати всі програми, які розпізнають IdenTrust.
У вересні 2021 року термін дії договору між Let’s Encrypt і IdenTrust закінчується і компанія перейде на власний кореневий сертифікат. Сертифікати, які випустили до цього все одно продовжать працювати.
Let’s Encrypt або платний сертифікат
У плані надійності безкоштовний сертифікат Let’s Encrypt не відрізняється від платного. І той і інший однаково безпечно налаштовує на сайті HTTPs. Але все одно є речі, в яких ці сертифікати відрізняються.
Термін дії. Let’s Encrypt — 90 днів; платний сертифікат — від року до двох.
У Let’s Encrypt є автоматичне оновлення, але якщо з якихось причин воно не спрацює і сертифікат не оновиться, сайт перестане відкриватися і доведеться все робити вручну.
У платних сертифікатів автоматичне продовження залежить від провайдера. Навіть якщо його немає, незадовго до закінчення терміну дії сертифіката вам кілька разів надішлють лист з нагадуванням його продовжити. А вже з самим продовженням допоможе служба підтримки хостинг-провайдера.
Сумісність. Let’s Encrypt — майже всі платформи; платні сертифікати — все платформи.
Сертифікати Let’s Encrypt не працюють на деяких платформах: Windows XP (до версії SP3), Android <v2.3.6, Java (7 і 8). Повний список сумісних платформ.
Ці платформи вже давно застаріли, але повністю користуватися люди ними ще не перестали. Поступово цей недолік буде ставати все менш актуальним.
Перевірка перед випуском. Let’s Encrypt — тільки перевірка володіння доменом; платні сертифікати — перевірка володіння доменом + перевірка реєстрації бізнесу у деяких сертифiкатiв.
Перевірка володіння доменом потрібна, щоб отримати SSL-сертифікат для конкретного домену міг тільки його власник, а не будь-хто. Перевірку проходять як при отриманні платного SSL-сертифіката, так і при отриманні SSL-сертифіката Let’s Encrypt. Але у випадку з Let’s Encrypt вона зазвичай виконується автоматично.
Така перевірка гарантує, що власник домену дав згоду на установку SSL, але при цьому сам сайт все одно може виявитися шахрайським. Щоб вирішити цей нюанс, придумали сертифікати з перевіркою компанії. Це коли крім перевірки володіння доменом потрібно також надіслати підтвердження реєстрації як юридична або фізична особа.
Сенс у тому, щоб додатково підкреслити, що сайт не шахрайський. Якщо на домені стоїть сертифікат з перевіркою компанії, значить його власник зареєстрований на державному рівні і тому має право вести бізнес від імені цього домену.
Так ось Lets Encrypt випускає тільки сертифікати з базової перевіркою володіння доменом. Перевірка компанії — це особливість платних сертифікатів.
Essential SSL у подарунок при купівлі хостингу
На більшості тарифів передплаченої віртуального хостингу і на всіх тарифах VPS при купівлі хостингу відразу на квартал або більше, ви отримаєте сертифікат Comodo безкоштовно.
Подивитися тарифиУстановка сертифіката Let’s Encrypt у cPanel
Знайдіть на головній сторінці cPanel блок «Безпека» і перейдіть до розділу «Let’s Encrypt SSL».
Тут буде список всіх доменів, для яких можна отримати сертифікат Let’s Encrypt. Щоб почати процес, натисніть у блоку «Issue a new certificate» кнопку «Issue» навпроти обраного домену.
На наступній сторінці у блоку «Installing certificate to: vashdomen.tk» виберіть піддомени, які повинен захистити сертифікат Let’s Encrypt.
Трохи нижче у блоку «Please choose an SSL validation method» виберіть спосіб валідації сертифіката (обидва способи автоматичні, вам нічого робити не доведеться). Потім натисніть кнопку «Issue».
Якщо випускаєте сертифікат не тільки для домену та його версії з www, але і для інших піддоменів, виберіть спосіб валідації за допомогою DNS.
Установка SSL-сертифіката Let’s Encrypt зазвичай займає близько 30 секунд. Після закінчення процесу ви побачите повідомлення, що все готово.
Натисніть кнопку «Go Back», щоб повернутися на головну сторінку розділу. У блоці «Your domains with Let’s Encrypt certificates» з’явиться рядок з доменом, для якого ви тільки що встановили сертифікат. У ній ви побачите термін дії встановленого сертифіката, а також зможете його видалити сертифікат (Remove), перевстановити (Reinstall) і переглянути деталі (View).
При цьому заново сертифікат вручну вам не доведеться, все буде відбуватися автоматично. На пошту, яка вказана в контактній інформації вашого облікового запису, буде приходити лист з підтвердженням перевстановлення.
Зайдіть на сайт у браузері. Перевірте, щоб в адресному рядку перед доменом було саме https://, а не http://. Ліворуч від домена повинен відображатися сірий замочок. Це значить, усе працює.
Якщо замочок буде перекреслено або на ньому буде якийсь знак типу знаку оклику або жовтого трикутника, значить щось не так і з’єднання незахищене. Натисніть на замочок, щоб побачити причину помилки. Погугліть, як її вирішити, або зверніться по допомогу до підтримки.
Залишається одне — домен досі відкривається по незахищеному протоколу HTTP. Щоб це виправити, налаштуйте примусову переадресацію з HTTP на HTTPs.
Для цього поверніться на головну сторінку cPanel, знайдіть блок «Файли» та перейдіть до розділу «Диспетчер файлів».
На наступній сторінці відкрийте в дереві каталогів зліва кореневу папку домену. Для основного домену вона зазвичай називається public_html, для додаткового — так само, як і сам домен.
У кореневій папці домену знайдіть файл .htaccess, виберіть його і натисніть «Редагувати» в меню з опціями угорі сторінки.
У самому верху файлу розмістіть такий код, після чого відступите від нього кілька рядків:
#Редірект з HTTP на HTTPs
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Збережіть зміни, очистіть кеш браузера і введіть в адресному рядку браузера домен спеціально з http://. Сайт повинен автоматично відкритися по https://.
Це все. Якщо ви купували хостинг у нас і щось не виходить, зверніться за допомогою в підтримку. Ми працюємо цілодобово і без вихідних.
Установка сертифіката Let’s Encrypt в командному рядку
Інструкції підійдуть для всіх популярних ОС на базі Linux: Ubuntu, Debian, CentOS. Вcё, що вам знадобиться – це доступ до сервера з привілеями sudo.
Спочатку підключіться до сервера по SSH.
ssh username@hostname
Для установки сертифіката знадобиться програма Certbot. Щоб її встановити, на сервері повинна бути утиліта snapd.
Установка snapd — це єдиний етап, на якому команди відрізняються в залежності від ОС на сервері. Далі вони будуть однаковими для будь-якої ОС.
Ми встановлювали Let’s Encrypt на VPS з Centos 7 і Ubuntu 18.04 з веб-сервером Apache. Якщо у вас інша ОС або веб-сервер, пошукайте відповідну інструкцію на офіційному сайті розробника утиліти.
Centos
sudo apt-get install snapd
Ubuntu
sudo apt install snapd
Після установки snapd переконайтеся, що у вас остання версія утиліти.
sudo snap install core
Зачекайте поки пройдуть всі перевірки і переходите до встановлення Certbot.
sudo snap install --classic certbot
Створіть символічне посилання між /snap/bin/certbot та /usr/bin/certbot. Це потрібно, щоб працювала команда certbot:
sudo ln -s /snap/bin/certbot /usr/bin/certbot
Надiшлiть запит на випуск та установку сертифіката Let’s Encrypt.
sudo certbot --apache
На першому етапі Certbot попросить вас ввести електронну пошту для звітів про продовження сертифіката і важливих повідомлень.
Далі буде посилання на правила користування послугами Let’s Encrypt. Введіть «Y», щоб погодитися з правилами і продовжити.
Потім вам запропонують підписатися на розсилку на пошту. Введіть «Y», щоб погодитися або «N», щоб відмовитися.
На наступному етапі Certbot виведе список доменів на сервері. Введіть номер домену, на який хочете встановити сертифікат Let’s Encrypt.
Процес установки автоматичний. В кінці має з’явитися повідомлення «Congratulations! You have successfully enabled https://vashdomen.tk ».
Зайдіть на ваш сайт в браузері. Перевірте, щоб в адресному рядку стояло https://, а не http://. Якщо потрібно, виправте протокол вручну. Сайт повинен відкриватися по HTTPs, а замочок в адресному рядку — бути сірим.
Якщо замочок буде перекреслено або на ньому буде якийсь знак типу знаку оклику або жовтого трикутника, значить щось не так і з’єднання незахищене. Натисніть на замочок, щоб побачити причину помилки. Погугліть, як її вирішити, або зверніться по допомогу до підтримки.
Якщо сайт відкривається також по HTTP, очистіть кеш в браузері. Certbot налаштовує примусовий редирект з HTTP на HTTPs, але швидше за все цього не буде помітно відразу через кеша.
Крім редиректу Certbot також створює завдання cron, яка буде автоматично продовжувати сертифікат кожні 90 днів. Залишається тільки переконатися, що ця задача працює.
sudo certbot renew --dry-run
Cлова «Congratulations, all simulated renewals succeeded» означатимуть, що все в порядку.
Це все. Якщо ви купували хостинг у нас і щось не виходить, опишіть проблему в коментарях або зверніться за допомогою в підтримку. Ми працюємо цілодобово і без вихідних.
Коли прийде час, Certbot повинен самостійно продовжити ваш Let’s Encrypt і надіслати лист з підтвердженням на пошту, яку ви вказали на першому етапі установки сертифіката.
Керуйте всіма сервісами в одному акаунті
У HOSTiQ є все для запуску сайту. У нас ви можете купити дешевий домен, віртуальний хостинг і SSL-сертифікат.
При купiвлi хостингу відразу на тривалий термін ви отримаєте Comodo Essential SSL у подарунок, або як варіант можете встановити безкоштовний SSL-сертифікат Let’s Encrypt.
Купити домен з хостингом