Як встановити SSL-сертифікат Let’s Encrypt
SSL-сертифікат — цифровий підпис, який забезпечує безпечне зашифроване з’єднання між сайтом та браузером за допомогою протоколу HTTPS. У 2015 році було запущено проєкт Let’s Encrypt, який дозволяє безплатно отримати сертифікат безпеки. Ми розпишемо покрокову інструкцію отримання сертифіката на CentOS.
Але перш ніж перейти до практичної частини, коротко згадаємо про різновиди ssl-сертифікатів. Ті, хто вже визначився з вибором, можуть заздалегідь пропустити цю частину.
Domain Validation Certificate — сертифікат із перевіркою домену, що підтверджує правдивість адреси сайту, при цьому більше жодної інформації не вказується. Це один із найдоступніших сертифікатів. На відміну від інших типів сертифікатів, видається як фізичним, так і юридичним особам.
Organization Validation Certificate — сертифікат, що засвідчує власника сайту і містить назву компанії, якій належить домен. Центр сертифікації у такому разі перевіряє не лише факт приналежності домену його власнику, а й факт реєстрації компанії.
Extended Validation Certificate — сертифікат, що підтверджує правдивість адреси сайту, а також інформацію про компанію, яка володіє доменом. При використанні цього сертифіката адреса сайту виділяється зеленим, вказуючи на те, що цьому ресурсу можна довіряти.
Wildcard SSL Certificate — сертифікат, що підтверджує правдивість основного домену, а також всіх його піддоменів.
Multi Domain Certificate — сертифікат, який видається певній кількості доменів. У кожному центрі сертифікації встановлено свій ліміт кількості доменів у сертифікаті. Як правило, у ціну сертифіката входить вартість кількох доменів, решту можна додати за окрему платню.
SGL Certificate — сертифікат, що підтверджує правдивість адреси сайту, містить інформацію про компанію, яка є власником домену. Забезпечує так зване покрокове шифрування, за якого відвідувач сайту, який використовує міжнародну версію браузера з коротким ключем (40 біт), автоматично перемикається на 128/256-бітне шифрування.
Code Signing Certificate — сертифікат, який забезпечує захист цілісності коду, програми, скриптів, макросів, сценаріїв та документації. Дозволяє додавати цифровий підпис до файлу, або сертифікати розробника. Такі файли практично недоступні для шпигунських програм, що гарантує повну безпеку при завантаженні.
Subject Alternative Name Certificates — сертифікат, що дозволяє захистити відразу безліч доменних імен, піддоменів, IP-адрес, хостів, міжмережевих екранів та шлюзів.
Отже, переходимо до практичної частини — встановимо SSL-сертифікат на СentOS.
Встановлюємо git
# yum install git
Переходимо до директорії /tmp
#cd /tmp
Завантажуємо файли Let’s Encrypt. Тепер наш скрипт виглядає так:
# git clone https://github.com/certbot/certbot
Переходимо до директорії certbot
# cd certbot
Даємо права на виконання для файлу скрипту
# chmod a+x ./certbot-auto
Прописуємо команду для отримання ssl-сертифіката
# ./certbot-auto certonly --webroot --agree-tos --email [email protected] -w /var/www/sslcert -d example.com-d example.com
-webroot – ключ встановлення;
-agree-tos – прийняття ліцензійної угоди;
-email [email protected] – вказуємо наш email;
/var/www/sslcert – каталог, де зберігається угода;
-d example.com – ім’я нашого домену (+піддомени, якщо є).
Далі запуститься скрипт, запропонує встановити відсутні пакети. Відповідаємо yes та чекаємо.
У разі успішного завершення з’явиться повідомлення
IMPORTANT NOTES:<br data-rich-text-line-break="true" style="box-sizing: inherit;">- Congratulations! Your certificate and chain have been saved at<br data-rich-text-line-break="true" style="box-sizing: inherit;">/etc/letsencrypt/live/example.com/fullchain.pem. Your<br data-rich-text-line-break="true" style="box-sizing: inherit;">cert will expire on 2016-08-21. To obtain a new version of the<br data-rich-text-line-break="true" style="box-sizing: inherit;">certificate in the future, simply run Certbot again.<br data-rich-text-line-break="true" style="box-sizing: inherit;">- If you lose your account credentials, you can recover through<br data-rich-text-line-break="true" style="box-sizing: inherit;">e-mails sent to [email protected].<br data-rich-text-line-break="true" style="box-sizing: inherit;">- Your account credentials have been saved in your Certbot<br data-rich-text-line-break="true" style="box-sizing: inherit;">configuration directory at /etc/letsencrypt. You should make a<br data-rich-text-line-break="true" style="box-sizing: inherit;">secure backup of this folder now. This configuration directory will<br data-rich-text-line-break="true" style="box-sizing: inherit;">also contain certificates and private keys obtained by Certbot so<br data-rich-text-line-break="true" style="box-sizing: inherit;">making regular backups of this folder is ideal.<br data-rich-text-line-break="true" style="box-sizing: inherit;">- If you like Certbot, please consider supporting our work by:<br data-rich-text-line-break="true" style="box-sizing: inherit;"><br data-rich-text-line-break="true" style="box-sizing: inherit;">Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate<br data-rich-text-line-break="true" style="box-sizing: inherit;">Donating to EFF: https://eff.org/donate-le
Сертифікат діє протягом 90 днів. На електронну адресу, вказану нами раніше, надходитиме повідомлення про закінчення терміну дії сертифіката. Поновлювати його рекомендується кожні 60 днів. Це робиться за допомогою команди
# certbot-auto renew
Бажаєте розібратися з установкою SSl-сертифіката Let’s Encrypt до домену на практиці? Записуйтесь на наш авторський курс #LEMP.