Загрузка...
Разработка сайтов

Установка Certbot на CentOS и AlmaLinux 8

Установка Certbot на CentOS и AlmaLinux 8

Certbot - это удобный инструмент на Python, который поможет вам легко получить бесплатные SSL-сертификаты от Let's Encrypt для вашего веб-сайта. Взглянем на процесс установки Certbot на CentOS и автоматической настройки веб-сервера nginx/apache для защищенного https-соединения.

Установка Certbot на CentOS 7 с nginx / apache

Для установки certbot нам потребуется установить репозиторий epel-release (все команды выполняются с правами root):

yum install epel-release

Далее устанавливаем сам клиент и модуль работы с сервером (пример для nginx):

yum install certbot python2-certbot-nginx

Если же вы используете apache, то выполните установку certbot с соответствующим модулем:

yum install certbot python2-certbot-apache

Установка Certbot на CentOS 8 и AlmaLinux 8 с nginx / apache

Для установки certbot нам потребуется установить репозиторий epel-release (все команды выполняются с правами root):

dnf install epel-release

Далее устанавливаем сам клиент и модуль работы с сервером (пример для nginx):

dnf install certbot python3-certbot-nginx

Если же вы используете apache, то выполните установку certbot с соответствующим модулем:

dnf install certbot python3-certbot-apache

Получение сертиката SSL с помощью Certbot

Приступаем к непосредственному получению бесплатного сертификата и настройке https. Если вы используете nginx, выполните:

certbot --nginx

Если у вас установлен apache:

certbot --apache

Certbot попросит указать адрес электронной почты, которая будет использована срочного продления и уведомлений безопасности. Указываем свою почту и нажимаем Enter:

Далее необходимо принять пользовательское соглашение, вводим Y и нажимаем Enter:

Нам предложат опубликовать наш адрес электронной почты после успешного получения сертификата. Отказываемся, введя N и Enter:

Certbot проверит конфигурационные файлы nginx / apache на наличие доменных имен. Если они будут найдены, то он выведет их список и предложит указать те, для которых требуется получить сертификаты и настроить веб-сервер (в консоли вводятся номера позиций, возможно указание нескольких через пробел). Если же у вас нет настроенных доменов, то имя потребуется указать вручную:

После этого дожидаемся окончания работы клиента:

Для успешной работы Certbot необходимо, чтобы у вас были открыты порты 80 и 443!

Включение автоматического обновления сертифката

Так как сертификаты Let’s Encrypt выдаются на три месяца, то настроим их автоматическое обновление. Для этого откроем любым текстовым редактором крон:

nano /etc/crontab

И укажем периодическое задание на обновление всех сертификатов с помощью certbot:

CentOS 7

0 0,12 * * * root python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew -q

CentOS 8 и AlmaLinux 8

0 0,12 * * * root python3 -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew -q