Как сгенерировать Let's Encrypt SSL с помощью Certbot

2 dic 2022 3 min di lettura
Как сгенерировать Let's Encrypt SSL с помощью Certbot
Indice dei contenuti

Введение

Let's Encrypt — это бесплатный, автоматизированный и открытый центр сертификации. Он позволяет создавать и устанавливать бесплатные сертификаты TLS на веб-сервере с помощью нескольких аргументов командной строки. С Let's Encrypt вы можете предоставить HTTPS на своем веб-сайте для каждого пользователя, не тратя денег и не беспокоясь о датах продления.

Certbot предоставляет простой способ создания бесплатных сертификатов Let's Encrypt для всех веб-сайтов, которые поддерживают HTTP и передают свой контент через HTTPS. В этой статье мы увидим, как использовать Certbot для автоматизации процесса создания сертификата Let's Encrypt.

Установить Сертбот

В большинстве систем Linux пакет certbot находится в репозиториях пакетов по умолчанию. Certbot — это инструмент для получения сертификатов от Let’s Encrypt и их настройки на вашем веб-сервере. Пакет Snap — это самый простой способ установить certbot в системе Ubuntu.

Откройте терминал и выполните следующую команду для установки certbot:

sudo snap install --classic certbot

Как только будет доступна новая версия certbot, Snap автоматически обновит пакет.

Создайте SSL-сертификат с Certbot

Теперь вы можете запрашивать SSL-сертификаты у Let's encrypt на основе веб-сервера. Мы обсудили 4 способа получения нового SSL-сертификата, которые зависят от веб-сервера, работающего в вашей системе. Возможно, в системе не работает веб-сервер.

Затем выберите правильный метод в соответствии с вашей средой:

Веб-сервер не запущен

В случае, если у вас нет веб-сервера, работающего в вашей системе. Вы можете --standalone выбрать завершение проверки домена, указав на поддельный веб-сервер. Этот коммутатор должен быть подключен к порту 80 для выполнения проверки домена.

sudo certbot certonly --standalone

Если вы запускаете certbot впервые, вам будет предложено принять условия и указать адрес электронной почты для отправки уведомлений.

Вы также можете указать входные данные из командной строки, например:

sudo certbot certonly --standalone -d example.com --staple-ocsp -m [email protected] --agree-tos

Сертбот с Apache

Системы, на которых работает веб-сервер Apache, выполняют следующую команду. В нем будут перечислены все домены/поддомены, настроенные на вашем веб-сервере. Выберите соответствующие номера для запроса сертификата.

sudo certbot --apache

Это прочитает файлы конфигурации Apache и перечислит все настроенные доменные имена. Введите номер домена, для которого вы хотите выпустить сертификат. Вы можете ввести несколько номеров, разделенных запятыми.

После подтверждения права собственности на домен будет выдан сертификат и создан файл конфигурации Apache с настройками SSL.

Сертбот с Nginx

Для систем с веб-сервером Nginx используйте следующую команду для запроса SSL-сертификатов.

sudo certbot --nginx -d example.com -d www.example.com

Некоторые другие веб-серверы работают

Для системы с другим работающим веб-сервером, кроме Apache или Nginx. Таким образом, вы можете просто получить сертификат и настроить их вручную.

Эта команда запросит у вас доменное имя и корень документа для домена.

sudo certbot certonly --webroot

Вы также можете передать доменное имя и/или корень документа в командной строке.

sudo certbot certonly --webroot -w /var/www/html -d example.com -d www.example.com

При использовании вышеуказанных команд домен должен быть указан на сервер в DNS. Также убедитесь, что /.well-known/acme-challenge обслуживается веб-сервером.

Просмотр файлов сертификатов

После того, как сертификат выдан центром Lets Encrypt. Все файлы сертификатов создаются в каталоге /etc/letsencrypt. Если ваше доменное имя — example.com, файлы будут созданы в следующем месте.

ls -l /etc/letsencrypt/live/example.com/
-rw-r--r-- 1 root root 692 Mar 9 06:59 README
 lrwxrwxrwx 1 root root 37 Sep 6 09:56 cert.pem ->../../archive/example.com/cert1.pem
 lrwxrwxrwx 1 root root 38 Sep 6 09:56 chain.pem ->../../archive/example.com/chain1.pem
 lrwxrwxrwx 1 root root 42 Sep 6 09:56 fullchain.pem ->../../archive/example.com/fullchain1.pem
 lrwxrwxrwx 1 root root 40 Sep 6 09:56 privkey.pem ->../../archive/example.com/privkey1.pem

Измените example.com на свое доменное имя, чтобы получить правильные файлы.

Вывод

Let’s Encrypt — это центр сертификации, который предоставляет бесплатные SSL-сертификаты для общедоступных веб-сайтов. Мы можем выпустить сертификаты на любое количество доменов. SSL-сертификаты выдаются только на 3 месяца, затем их нужно продлевать. Certbot — это утилита командной строки, которая помогает управлять SSL-сертификатами Let’s Encrypt. С помощью certbot мы можем выпустить новый сертификат, обновить и удалить его.

Я надеюсь, что это руководство поможет вам работать с Certbot для управления SSL-сертификатом в вашей системе.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.