Certbot: выпуск сертификата Let's Encrypt через webroot в BitrixVM
Команда certbot certonly --webroot для BitrixVM на CentOS. Путь к сайту в /home/bitrix/ext_www/. По документации Certbot (webroot plugin).
Как использовать
- Узнай имя домена: ls /home/bitrix/ext_www/
- Подставь свой домен вместо example.com в -w и -d.
- После успеха сертификаты лежат в /etc/letsencrypt/live/ДОМЕН/
Получение сертификата Let’s Encrypt методом webroot: certbot кладёт HTTP-01 challenge в каталог сайта, nginx отдаёт его без изменения конфигурации. По Certbot User Guide — webroot.
В BitrixVM документ сайта лежит в /home/bitrix/ext_www/ДОМЕН/public_html. Этот путь передаётся в -w.
Установка certbot (CentOS/RHEL)
yum install certbot -y
which certbot
Выпуск сертификата для одного домена с www
Замени example.com на свой домен. Флаг --non-interactive обязателен для скриптов и cron; для первого запуска можно опустить и ввести email по запросу.
certbot certonly \
--webroot \
-w /home/bitrix/ext_www/example.com/public_html \
-d example.com \
-d www.example.com \
--email admin@example.com \
--agree-tos \
--non-interactive
При успехе в выводе будет строка вида «Successfully received certificate». Сертификаты появятся в каталоге:
ls -la /etc/letsencrypt/live/example.com/
# fullchain.pem — цепочка сертификатов
# privkey.pem — закрытый ключ
Проверка: доступен ли каталог для ACME challenge
Если выпуск падает с ошибкой проверки домена, убедись, что по HTTP отдаётся путь /.well-known/acme-challenge/:
mkdir -p /home/bitrix/ext_www/example.com/public_html/.well-known/acme-challenge
echo test > /home/bitrix/ext_www/example.com/public_html/.well-known/acme-challenge/test.txt
chown -R bitrix:bitrix /home/bitrix/ext_www/example.com/public_html/.well-known
curl -s http://example.com/.well-known/acme-challenge/test.txt
# Должен вернуться текст: test
Если ответ пустой или 404 — проверь путь -w и конфигурацию nginx для этого сайта.
Источники: Certbot — Using the webroot plugin, Let’s Encrypt — HTTP-01 challenge.