
В этой статье я расскажу об особенностях Let’s Encrypt, о которых не стоит забывать, и о том, как воспользоваться им, если ваш сервер работает под управлением панели Plesk.
У проекта Let’s Encrypt есть ряд особенностей:
- Сертификат выписывается на 90 дней — нельзя забывать об обновлениии. Если делать это руками, то велик шанс забыть обновить вовремя.
- Консольный клиент по умолчанию пытается настроить конфигурацию Apache, при этом существует шанс, что что-то пойдет не так.
- Поддержка nginx экспериментальная.
- Установка клиента потребует наличия инструментария разработчика на сервере (autotool, gcc), чтобы собрать зависимости: cryptography, psutil, pure python, cffi. Что, в целом, не рекомендуется на боевом сервере.
Если сервер работает под управлением панели управления хостингом Plesk, то вы можете не беспокоиться об этих проблемах. Мы собрали зависимые пакеты для большинства поддерживаемых Plesk’ом ОСей, а также написали расширение Let's Encrypt для Plesk’a. Оно состоит из 2 частей:
- бэкенд — это официальный консольный клиент с плагином для работы с Plesk. Плагин использует Plesk API для валидации и установки сертификатов.
- само расширение, которое предоставляет пользовательский интерфейс и обновляет по расписанию выписанные сертификаты.
Попробуем все это в деле. Берем Plesk и устанавливаем Let's Encrypt через каталог расширений:


В процессе установки запускается shell скрипт, который настроит репозиторий, установит недостающие пакеты, сделает virtualenv и поставит в него консольный клиент с плагином для Plesk.
На экране расширения выбираем сайт и ставим сертификат:


Для тех, кто уже пользовался консольным клиентом, форма напомнит диалог интерактивного режима. В сообщении об успешной установке сертификата имеется ссылка. Проходим по ней:


В адресной строке имя протокола (HTTPS) подсвечено зеленым цветом, то есть соединение с сайтом идет по шифрованному каналу и браузер доверяет сертификату.
Поверяем, появилась ли в расписании задача по обновлению сертификатов (Tools & Settings -> Scheduled Tasks):

Выше упоминалось, что срок действия сертификата 90 дней, после его нужно обновить. Разработчики Let's Encrypt рекомендуют обновлять сертификаты чаще. В Plesk’e по-умолчанию сертификат будет обновляться каждый месяц.
Подведу итог:
- за несколько кликов и 1 минуту времени бесплатно получили сертификат;
- все операции были проделаны в панели Plesk, заглядывать в консоль не пришлось;
- сертификат работает и на Apache, и на nginx.
Само расширение поддерживается для современных Linux-дистрибутивов, которые поддерживает Plesk.
Сайт devblog.plesk.com, который мелькает на скриншотах, — это блог о Plesk’е, который работает на сервере под управлением Plesk, а сертификат выписан расширением, что описано выше. Стараемся следовать принципу «eat your own dog food» использовать свой собственный продукт.
Все вопросы пишите в комментариях, будем рады ответить.