How-To: Установка SSL-сертификата Let's Encript на хостинге от RU-CENTER
Грубое решение в лоб для установки бесплатного сертификата от Let's Encript для сайта на хостинге от RU-CENTR.
Для выполнения этой процедуры нам потребуется ssh-доступ к нашему web-серверу, и утилита acme.sh.
Подготовка к получению сертификата
Прежде всего нам нужно загрузить на наш web-сервер скрипт acme.sh. Для этого подключаемся к серверу с помощью любимого SSH-клиента. Загружаем из репозитория acme.sh последнюю версию скрипта и распаковываем в домашний каталог:
$ wget -c "https://github.com/acmesh-official/acme.sh/archive/refs/tags/3.0.0.zip"
$ unzip 3.0.0.zip
Следующим шагом создадим каталог для сохранения полученных сертификатов и настроек скрипта:
$ mkdir -p ~/certs
Так как в последних версиях acme.sh использует в качестве удостоверяющего центра по умолчанию ZeroSSL.com CA, перед получением нового сертификата нужно зарегистрировать аккаунт:
$ ./acme.sh-3.0.0/acme.sh --home ~/certs --register-account -m email@example.tld
Запрос нового сертификата
Теперь всё готово для запроса нового сертификата для нашего сайта:
$ ./acme.sh-3.0.0/acme.sh --issue --home ~/certs -d example.tld -w ~/site/dir/docs
После выполнения этой команды (если всё прошло без ошибок) в каталоге
~/certs/example.tld
будут созданы файлы настроек, а так же файлы сертификата
и приватного ключа:
ca.cer
fullchain.cer
example.tld.cer
example.tld.conf
example.tld.csr
example.tld.csr.conf
example.tld.key
Эти файлы можно упаковать в архив и скопировать к себе на компьютер по протоколу SCP или FTP для упрощения процедуры на следующем шаге:
$ zip -j certs ~/certs/example.tld/*.{cer,key}
adding: ca.cer (deflated 31%)
adding: fullchain.cer (deflated 32%)
adding: example.tld.cer (deflated 27%)
adding: example.tld.key (deflated 23%)
Установка сертификата на web-сервер
Для установки сертификата на web-сервер переходим в панель управления хостингом. В панели управления переходим в настройки сайта, на который требуется установить сертификат. Переходим на вкладку Безопасность и включаем Защищённое HTTPS-соединение. После чего нажимаем на кнопку Установить сертификат.
В диалоге установки сертификата в поле Сертификат загружаем файл
fullchain.cer
. В поле Приватный ключ сертификата загружаем файл
example.tld.key
и нажимаем кнопку Установить.
Собственно задача решена.
Обновление сертификата
Срок действия сертификатов от Let's Encript составляет три месяца. Для обновления сертификата примерно раз в три месяца выполняем следующую последовательность действий:
- Заходим на web-сервер с помощью любимого SSH-клиента и запускаем команды:
$ ./acme.sh-3.0.0/acme.sh --home ~/certs --cron # обновление сертификата $ zip -j certs ~/certs/example.tld/*.{cer,key} # упаковка файлов сертификата в архив
- Скачиваем полученный архив к себе на компьютер (по протоколу SCP или FTP, либо с помощью файлового менеджера из панели управления хостингом).
- В панели управления хостингом переходим в настройки сайта, для которого
обновляем сертификат. На вкладке Безопасность нажимаем кнопку
Сменить сертификат. В диалоге установки сертификата в поле Сертификат
загружаем файл
fullchain.cer
. В поле Приватный ключ сертификата загружаем файлexample.tld.key
и нажимаем кнопку Установить.