Bitrix lets encrypt error

Добрый день!Последнее время при попытке сконфигурировать сертификат Let's encrypt процесс заканчивается ошибкой. Причём заметил это на двух разных серверах c Bitrix virtual appliance version 7.3.1. Может кто-то сталкивался с такой же проблемой?

чтоб не плодить темы напишу сюда.
можете подсказать закончилось место на диске. не заметил. попытался обновить сертификат в итоге nginx перестал запускатся.
systemctl status nginx -l

● nginx.service — nginx — high performance web server
  Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
  Active: failed (Result: exit-code) since Tue 2022-03-15 09:33:52 MSK; 17min ago
    Docs:

http://nginx.org/en/docs/

 Process: 856 ExecStartPre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf (code=exited, status=1/FAILURE)

Mar 15 09:33:52 crm.crm.MYcompany systemd[1]: Starting nginx — high performance web server…
Mar 15 09:33:52 crm.crm.MYcompany nginx[856]: nginx: [emerg] cannot load certificate «/home/bitrix/dehydrated/certs/crm.MYcompany/fullchain.pem»: BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen(‘/home/bitrix/dehydrated/certs/crm.MYcompany/fullchain.pem’,’r’) error:2006D080:BIO routines:BIO_new_file:no such file)
Mar 15 09:33:52 crm.crm.MYcompany nginx[856]: nginx: configuration file /etc/nginx/nginx.conf test failed
Mar 15 09:33:52 crm.crm.MYcompany systemd[1]: nginx.service: control process exited, code=exited status=1
Mar 15 09:33:52 crm.crm.MYcompany systemd[1]: Failed to start nginx — high performance web server.
Mar 15 09:33:52 crm.crm.MYcompany systemd[1]: Unit nginx.service entered failed state.
Mar 15 09:33:52 crm.crm.MYcompany systemd[1]: nginx.service failed.

/home/bitrix/dehydrated/dehydrated -c

+ Challenge validation has failed
ERROR: Challenge is invalid! (returned: invalid) (result: [«type»]      «http-01                                                                                                                                                             «
[«status»]      «invalid»
[«error»,»type»]        «urn:ietf:params:acme:error:connection»
[«error»,»detail»]      «Fetching

http://crm.MYcompany/.well-known/acme-challeng

                                                                                                                                                            e/u7vcgx9M63wVKujWd8RzEYKlZes3p9V3dHZ1kxqHB6s: Connection refused»
[«error»,»status»]      400
[«error»]       {«type»:»urn:ietf:params:acme:error:connection»,»detail»:»Fetchi      

я так понимаю он не стартует изза SSL, ssl не могу установить без nginix.   (доступ по http включил через меню)

как можно стартануть его чтоб попытаться загрузить сертификат , и запустить все ?

При запросе обновления сертификата возникает  ошибка:

# INFO: Using main config file /home/bitrix/dehydrated/config
Processing

my.domen

+ Checking expire date of existing cert…
+ Valid till Dec  1 22:00:27 2022 GMT (Less than 20 days). Renewing!
+ Signing domains…
+ Generating private key…
+ Generating signing request…
+ Requesting new certificate order from CA…
+ Received 1 authorizations URLs from the CA
+ Handling authorization for

my.domen

+ 1 pending challenge(s)
+ Deploying challenge tokens…
+ Responding to challenge for

my.domen

authorization…
+ Cleaning challenge tokens…
+ Challenge validation has failed :(
ERROR: Challenge is invalid! (returned: invalid) (result: [«type»]      «http-01»
[«status»]      «invalid»
[«error»,»type»]        «urn:ietf:params:acme:error:unauthorized»
[«error»,»detail»]      «275:6578:1::5c445:4569» Invalid response from

https://my.domen/.well-known/acme-challenge/dUzivMQcUJ15ZYDobejVQcFroztd_YYh9Z2wd77p..

.: 404″
[«error»,»status»]      403
[«error»]       {«type»:»urn:ietf:params:acme:error:unauthorized»,»detail»:»275:6578:1::5c445:4569: Invalid response from

https://my.domen

/.well-known/acme-challenge/dUziv$
[«url»] «

https://acme-v02.api.letsencrypt.org/acme/chall-v3/184523880117/oY249A»

;
[«token»]       «dassdhgfhDobsdfoztd_YYh9Z2wfghmo»
[«validationRecord»,0,»url»]    «

http://my.domen

/.well-known/acme-challenge/dUzivMQcUJgfhobejVQcFroztd_YYh9Z2wd77pP…;
[«validationRecord»,0,»hostname»]      

my.domen

[«validationRecord»,0,»port»]   «80»
[«validationRecord»,0,»addressesResolved»,0]    «*.*.*.*»
[«validationRecord»,0,»addressesResolved»,1]    «275:6578:1::5c445:4569»
[«validationRecord»,0,»addressesResolved»]      [ «*.*.*.*»,»275:6578:1::5c445:4569″]
[«validationRecord»,0,»addressUsed»]   «275:6578:1::5c445:4569»
[«validationRecord»,0]  {«url»:»

http://my.domen

/.well-known/acme-challenge/dUzivMQcUJfhodfhVQcFroztd_YYh9Z2wd77pP…$
[«validationRecord»,1,»url»]    «

https://my.domen

.well-known/acme-challenge/dUzivMQcUJ1hfghfejVQcFroztd_YYh9Z2wd77p…;
[«validationRecord»,1,»hostname»]        

my.domen

[«validationRecord»,1,»port»]   «443»
[«validationRecord»,1,»addressesResolved»,0]     «*.*.*.*»
[«validationRecord»,1,»addressesResolved»,1]    «275:6578:1::5c445:4569»
[«validationRecord»,1,»addressesResolved»]      [» «*.*.*.*»,»275:6578:1::5c445:4569″]
[«validationRecord»,1,»addressUsed»]    «275:6578:1::5c445:4569»
[«validationRecord»,1]  {«url»:»

https://my.domen

/.well-known/acme-challenge/dUzivMQcUJ15ZYDobejfhztd_YYh9Z2wd77p…$

https://my.domen

/.well-known/acme-challenge/dUzivMQcUJ15gfhhfghfhvnroztd_YYh9Z2wd77p…     [{«url»:»

http://my.domen

/.well-known/acme-c$
[«validated»]   «2022-12-06T07:03:22Z»)

Порт 80 открыт.
Выполняю через Manage pool web servers
Так и командой /home/bitrix/dehydrated/dehydrated -c . Причем ранее сертификаты обновлялись нормально. Помогите пожалуйста разобраться.

Не перевыпускаются сертификаты letseycrhpt на Bitrix VM 7.3.(0-3)
Код ошибки: DLG_FLAGS_SEC_CERT_DATE_INVALID
Такую ошибку я видел уже несколько раз на серверах клиентов и всегда она ставила их в тупик, поскольку выдачей сертификатов занимается сама VM
Если у вас сертификат не смог обновиться то проверим смело:

  • Удалите старые сайты, А запись которых не ведет на этот сервер, но сертификат пытается выпуститься на этом сервере.
  • Убедитесь что ААА — запись отсутствует, letsencrypt не поддерживает эту запись
  • Убедитесь что для домена www есть А запись и она отдается с этого же сервера.
  • У вас есть место на сервере.
  • Вы уже создали 5 раз за неделю сертификат.

Если сертификат генерируется но не применяется, сразу смотрим патч внизу.
Если все вышесказанное уже сделано, то смотрим как генерируется сертификат в Bitrix VM 7.

В /etc/letsencrypt ничего нет. Так же ничего нет в crontab, да и вообще certbot тоже нет.
В Bitrix VM 7 используется dehydrated

Запустим генерацию сертификатов аналог certbot renew

 cd /home/bitrix/dehydrated/ && ./dehydrated -c 

Смотрим на чем встала генерация, и исправляем.
В том же каталоге лежит файл со списком доменов для обновления /home/bitrix/dehydrated/domains.txt
Убедимся что ничего не сломалось

 nginx -t

Все что нам остается это применить сертификаты.

nginx -t && nginx -s reload

или

systemctl reload nginx

Иногда сертификаты сгенерированны, и установлены, но не примерились автоматически.
Если такая ситуация повторяется просто поставьте на крон применение сертификатов.

* */12 * * * /usr/sbin/nginx -t && /usr/sbin/nginx -s reload  >/dev/null 2>&1 

Ну и если это не помогло а ошибок при генерации сертификатов уже нет, то пересоздадим сертификат заново в меню VM 8 -> 3 ->1 ( и на вопрос о перегенерации отвечаем да) ждем минуту а желательно открываем в инкогнито и проверяем.

Где и что смотреть

Запустить генерацию letsencrypt сертификата с консоли:

sudo -u root /opt/webdir/bin/bx-sites -a configure_le --site "site.ru" --email "le@site.ru" --dns "site.ru www.site.ru" -o json

Лог генерации битрикс вм:

 /opt/webdir/temp/номер вашей задачи

Лог генерации сертификата:

/home/bitrix/dehydrated_update.log

Сами сертификаты:

 /home/bitrix/dehydrated/certs

Так же из-за способа проверки валидности сертификата самой вм, возможна ошибка

"type": "urn:acme:error:rateLimited", 
  "detail": "Error creating new cert :: too many certificates already issued for exact set of domains: site.ru,www.site.ru: see https://letsencrypt.org/docs/rate-limits/",
  "status": 429

Возникнуть она может по двум причинам
— Вы действительно слишком часто его создавали
— Алгоритм обновления сертификата дожидается валидного завершения от ВСЕХ сайтов! При том он их действительно принудительно пере создает (даже валидные сертификаты).

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

#!/bin/bash
# патчим баг битиркс вм принудительные генерации сертификатов.
if cat /etc/ansible/roles/web/tasks/dehydrated.yml | grep '/home/bitrix/dehydrated/dehydrated -c --force'; then
  sed  -i 's/dehydrated -c --force/dehydrated -c/g' /etc/ansible/roles/web/tasks/dehydrated.yml
fi

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

Отозвать сертификат, и вернуть дефолтный Bitrix сертификат можно вот так:

sudo -u root /opt/webdir/bin/bx-sites -a reset_cert --site "site.ru" -o json

Обратите внимание
ВМ 7.3.4 — полностью изменили выдачу сертификатов на классическую certbot

Пару дней назад произошла со мной такая история. Сажусь я создать SSL-сертификаты для нескольких сайтов…

Что случилось с получением SSL-сертификатов в виртуальной машине Битрикс?

Пару дней назад произошла со мной такая история. Сажусь я создать SSL-сертификаты для нескольких сайтов и коробочного портала Битрикс24. Все делаю по стандартному способу, который я описывал ранее тут. Но в итоге сертификат не выдается и в текущих задачах сервера я вижу ‘error’ на создании сертификата.

Начинаю копать логи. Иду в /opt/webdir/temp/, смотрю номер задания и просматриваю /status/. Виду такое:
Account creation on ACMEv1 is disabled. Please upgrade your ACME client to a version that supports ACMEv2 / RFC 8555. See 

https://community.letsencrypt.org/t/end-of-life-plan-for-acmev1/88430

 for details.

Значит на наших серверах проблем нет, а не создается аккаунт на стороне Let’s Encrypt. Прохожу по ссылке и становится понятно что с 31 октября 2019 года заканчивается поддержка регистрации сертификатов по api v1 и будет только по api v2. А виртуальная машина Битрикс как раз использует первую версию api.

Но ведь еще не 31 октября, в чем же дело? 

А вот в чем:
image_2019_10_11T11_04_45_651Z.png
Из текста видно, что регистрация будет дополнительно закрыта с 10 по 11 октября и с 16 по 18 сентября. А с 31 октября 2019 будет закрыта уже на совсем. И как раз получилось что я попал на эти даты. 12 числа создание сертификатов на VM bitrix уже работает и я успешно создал сертификаты своим клиентам.

Что делать после 31 октября 2019?

Удалось получить ответ от разработчиков Битрикс. О проблеме известно и уже на днях выйдет обновление виртуальной машины. И теперь, чтобы получать сертификаты вам обязательно нужно будет обновить свою виртуальную машину Битрикс.

Ее версия должна быть выше 7.4.1.

Установка LetsEncrypt SSL-сертификатов прямо из панели виртуальной машины bitrix VM! Источник: 

С версии 7.2.2 битрикс-машины появилась возможность подключать бесплатные валидные SSl-сертификаты от Lets Encrypt прямо из меню виртуальной машины.

Let’s Encrypt — центр сертификации, начавший работу в бета-режиме с 3 декабря 2015 года, предоставляющий бесплатные криптографические сертификаты для HTTPS. Процесс выдачи сертификатов полностью автоматизирован. Сертификаты выдаются только на 3 месяца для предотвращения инцидентов безопасности.

Ограничения LetsEncrypt:

1/ https://community.letsencrypt.org/t/which-browsers-and-operating-systems-support-lets-encrypt/4394
2/ Firefox. Как мимимум с 4.0 (возможно с 1.0) работает. (StartSSL в древних лисах работать не будет). Все современные лисы работают всеми CA.
3/ Thunderbird. Точно все современные версии на всех ОС (включая wosign. StartSSL в древних версиях не поддерживается)
4/ IE и Edge. Минимум 8 версия для всех. IE6 точно не поддерживается, по IE7 в зависимости от условий.
5/ Chrome и Cromium. Поддержка ОС аналогично встроенной ОС криптоапи (древние макоси, линуксы и winXP не будут работать ни с каким CA).
6/ Safari на всех современных Apple-устройствах точно работает.
7/ Android точно работает с версии 4.2 со всеми . Версия 2.0.6 (Android browser 2.0.6 Webkit 530.17) точно НЕ работает.
8/ Java не работает с letsencrypt.
9/ wget и curl могут не работать на старых системах

Как установить бесплатный ssl сертификат от Lets Encrypt в битрикс-машине?

В меню машины пройти по пунктам 8. Manage web nodes in the pool -> 3. Certificates configuration -> 1. Configure Let’s encrypt certificate. Указать сайт (или сайты), dns имена сайта(-ов), email для нотификаций сервиса Lets Encrypt, подтвердить ввод.

Пример:

Мастер самостоятельно запросит и установит сертификат из сети.
Поддерживается ввод нескольких сайтов, через запятую (test1.bx, test2.bx).

Перевыпуск сертификатов будет автоматический. Это отлично, с учетом того что сертификат дается только на 3 месяца.

Что делать, если сертификат не устанавливается и битрикс машина выдает ошибку?

Мое знакомство с данным новшеством прошло именно так: после настройки сертификата фоновая задача в машине завершалась с ошибкой:

---------------------------------------------------------
TaskID                      |    Status | Last Step
----------------------------------------------------------
site_certificate_1113161018 |    error |  play|complete

Смотрим логи и выясняем подробности. Директория /opt/webdir/temp содержит логи задач, смотрим по нашей задаче site_certificate_1113161018.

Первый лог /opt/webdir/temp/site_certificate_1113161018/status, в нем есть строчка с прерыванием, а также видим и второй лог:

TASK [web : create certificates] ***********************************************
fatal: [acrit]: FAILED! => {"changed": true, "cmd": "/home/bitrix/dehydrated/dehydrated 
-c > /home/bitrix/dehydrated_update.log 2>&1" ...

С этого места становиться понятно, что машина установила библиотеку dehydrated в папку /home/bitrix/dehydrated, а лог ее выполнения расположен в dehydrated_update.log

Смотрим второй лог /home/bitrix/dehydrated_update.log, в нем тоже есть ошибка:

+ Responding to challenge for www.goooodsite.ru..
ERROR: Challenge is invalid! (returned: invalid) (result: {
 "type": "http-01",
 "status": "invalid",
 "error": {
   "type": "urn:acme:error:unauthorized",
   "detail": "Invalid response from http://www.goooodsite.ru/.well-known/acme-challenge/dummy",
   "status": 403
 }, 
})

Выходит, что для проверки требуется доступность сайта по http и https с самоподписанным сертификатом, дабы проверить права владения на оба сайта.

Поэтому настроим редирект и еще раз запустим получение ключа:

1/ Отключаем редирект с http и https

2/ Создаем вручную папку на сайте /.well-known/acme-challenge/ с текстовым файлом внутри:

echo "thisisthecontentoffile" > /home/bitrix/www/site/.well-known/acme-challenge/dummychallengefile

и проверяем чтобы этот файл корректно открывался для http и https: http://www.goooodsite.ru/.well-known/acme-challenge/dummychallengefile https://www.goooodsite.ru/.well-known/acme-challenge/dummychallengefile

3/ Запускаем заново, и опять ошибка. Опять смотрим логи задачи. На этот раз сертификат получен, а ошибка в конфигурации сайта в nginx: /etc/nginx/bx/site_avaliable/bx_ext_ssl_www.goooodsite.ru.conf

4/ ошибку устраняем (лишняя директива из-за авто-вставки настроек в файл) и видим что сертификат добавился в конфиг, а сами сертификаты хранятся тут /home/bitrix/dehydrated/certs/:

# CERTIFICATE ANSIBLE MANAGED BLOCK
include bx/conf/ssl_options.conf;
ssl_certificate   /home/bitrix/dehydrated/certs/www.goooodsite.ru/fullchain.pem;
ssl_certificate_key  /home/bitrix/dehydrated/certs/www.goooodsite.ru/privkey.pem;
ssl_trusted_certificate /home/bitrix/dehydrated/certs/www.goooodsite.ru/chain.pem;
# CERTIFICATE ANSIBLE MANAGED BLOCK

5/ nginx перезапускаем, редирект из http в https возвращаем. Сертификат добавлен.

Вот собственно путь отладки и исправления ошибки авто-установки сертификата, если сертификат был установлен на сайте, как написано в статье «Установка ssl-сертификата для битрикс окружения bitrix vm».

Использованные материалы:

  • Халявные сертификаты для нищебродов без гемора. LetsEncrypt вместо Wosign и их подводные камни.
  • VMBitrix 7.2.0 в релизе
  • The client lacks sufficient authorization — 404

Назад в раздел

Оглавление

  • Получаем бесплатный SSL сертификат для Битрикс24 (VMBitrix)
  • Добавляем SSL-сертификаты в конфиги nginx для Битрикс24
  • Как настроить автоматическое продление бесплатного SSL сертификата
  • Возможные ошибки!

Получаем бесплатный SSL сертификат для Битрикс24 (Bitrix VM)

Чтобы в Bitrix VM установить SSL сертификат от Let’s Encrypt для начала его нужно нам получить. Как получим бесплатный сертификат и установим его не сервер мы сделаем автоматическое задание на его перевыпуск.
Для начала нужно установить certbot от Let’s Encrypt для автоматизации процесса получения бесплатных сертификатов а после и для автоматизации перевыпуска.
В моём случае я прикручивал бесплатный SSL (для доступа по https) сертификат Let’s Encrypt на виртуальную машину Битрикс 24 (Bitrix VM).

yum -y install yum-utils
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
yum install certbot

Для получения сертификата certbot’у нужен будет доступ через 443 порт (❗) и для этого мы пока временно потушим работу nginx, так как он занимает этот порт.

systemctl stop nginx

А теперь сыпустим сам сертификат. В процессе выпуска нас попросят ввести email и ответить на пару вопросов о соглашении и т.д.

certbot certonly --standalone -d itlocate.ru -d www.itlocate.ru

При успешном выполнении операции вы увидите сообщение наодобие

Waiting for verification...
Cleaning up challenges
Generating key (2048 bits): /etc/letsencrypt/keys/0000_key-certbot.pem
Creating CSR: /etc/letsencrypt/csr/0000_csr-certbot.pem

IMPORTANT NOTES:
-   Congratulations! Your certificate and chain have been saved at:
    /etc/letsencrypt/live/mywebsite.com-0001/fullchain.pem
    Your key file has been saved at:
    /etc/letsencrypt/live/mywebsite.com-0001/privkey.pem
    Your cert will expire on 2019-02-27. To obtain a new or tweaked
    version of this certificate in the future, simply run certbot again
    with the “certonly” option. To non-interactively renew all of
    your certificates, run “certbot renew”
-   If you like Certbot, please consider supporting our work by:
    
    Donating to ISRG / Let's Encrypt:    https://letsencrypt.prg/donate
    Donating to EFF:                     https://eff.org/donate-le

Мы получили наши сертификаты и они лежат тут: /etc/letsencrypt/live/itlocate.ru/

Добавляем SSL-сертификаты в конфиги nginx для Битрикс24

Теперь прикручиваем сертификаты к сайту. Открываем файл /etc/nginx/bx/conf/ssl.conf и заменяем в нём следующие строки

ssl_certificate         /etc/nginx/ssl/cert.pem;
ssl_certificate_key     /etc/nginx/ssl/cert.pem;

На пути к нашим новеньким сертификатам:

ssl_certificate        /etc/letsencrypt/live/itlocate.ru/fullchain.pem;
ssl_certificate_key    /etc/letsencrypt/live/itlocate.ru/privkey.pem;

После этого необходимо рестартануть наш nginx:

systemctl restart nginx

Теперь можно проверить доступен ли наш сайт по ссылке https://itlocate.ru

Если сайт открылся, то в меню VMBitrix переходим по 6. Configure pool sites 5. Change a site’s https settings и отключаем доступ по HTTP.

Как настроить автоматическое продление бесплатного SSL сертификата

Так как бесплатный SSL-сертификат имеет срок действия 90 дней, то нам нужно предусмотреть механизм автоматического обновления сертификата. Это можно сделать вручную, выполнив команду на сервере:

certbot renew

И все сертификаты, которые истекают менее чем через 30 дней будут обновлены на новые. Но нам нужно это автоматизировать. Для этого в cron добавим задание. Выполняем команду:

crontab -e   

Откроется при помощи Vi редактора. дула добавляем задание, которое будет выполняться ежедневно в 03:30:

30 3 * * * /usr/bin/certbot renew --pre-hook "systemctl stop nginx" --post-hook "systemctl start nginx"

На этом нашу настройку бесплатного сертификата Битрикс24 считаю законченной 😎!

Возможные ошибки!

Как открыть меню битрикс в VMBitrix 🙃

Да, бывает и такое! Для того, чтобы вызовать меню настроек VMBitrix 7.X.X из командной строки Linux необходимо выпольнить следующую команду:

/root/menu.sh

Или просто, если вы уже находитесь в root директории.

./menu.sh

Удаление ААА записи

В моём случае я столкнулся с следующей ошибкой. Я прописал A запись с указанием моего сервера с VMBitrix и домен открывался, однако сертификат выпустить не удавалось 😈 :

IMPORTANT NOTES:
 - The following errors were reported by the server:

   Domain: test.domain.com
   Type:   connection
   Detail: Fetching
   http://test.domain.com/.well-known/acme-challenge/oTk4n-oaIuuAo_3WUSyh153oK5JLVGPedvHiztgoU68:
   Error getting validation data

   To fix these errors, please make sure that your domain name was
   entered correctly and the DNS A/AAAA record(s) for that domain
   contain(s) the right IP address. Additionally, please check that
   your computer has a publicly routable IP address and that no
   firewalls are preventing the server from communicating with the
   client. If you're using the webroot plugin, you should also verify
   that you are serving files from the webroot path you provided.

В итоге моя А запись разнилась с ААА записью. После удаления ААА записи всё получилось. 😉

В этой статье я расскажу как с помощью VM-Bitrix установить сертификат на сайт и что делать, если сертификат не хочет устанавливаться.

Let’s Encrypt – это некоммерческий проект, который позволяет выпускать бесплатные сертификаты со сроком использования – 90 дней. А в VM-Bitrix используется средство, которое по истечении этого срока в автоматическом режиме обновляет сертификат сайта.

Как создать сертификат

Сертификат с помощью VM-Bitrix создается очень просто. Приведу ниже инструкцию в виде галереи, просто листайте картинки.1 из 4

Выбираем 8. Manage pool web servers

Пройдемся по настройкам:

Enter site name – вводим название сайта, который нуждается в SSL сертификате

Enter DNS name – вводим DNS имена

Внимание! По всем введенным DNS именам должен открываться ваш сайта, иначе сертификат не будет получен.

Enter email – вводим любой, на него будут приходить уведомления о продлении сертификата

Проверка установки сертификата

Обязательно проверьте результат установки сертификата1 из 2

Выбираем 10. Background poll tasks

Если увидели finished – значит сертификат успешно установлен и внедрен в конфигурацию сервера. Открываем браузер в анонимном режиме, запускаем сайт и проверяем сертификат.1 из 3

Если видим значок замка, значит сертификат все хорошо. В подробнее можно ознакомится с сертификатом

Если по какой-то причине в браузере сайт ругается на отсутствие сертификата – попробуйте перезагрузить nginx в консоле сервера с помощью команды service nginx restart

В противном случае

Если на этапе установки увидели статус error, то идем смотреть логи по пути /home/bitrix/dehydrated_update.log и разбираться в чем проблема

Просматривать логи особенно удобно с помощью программы «mc», так что рекомендую поставить. Если у вас centos, то это делается с помощью консольной команды «yum install mc»

Ошибка в логах пишется прямым текстом, примера у меня нет, поэтому сразу перейду к рассказу о том, какие бывают ошибки.

Частые причины ошибки

  • Сайт недоступен из внешней стороны

Что делать: проверить доступность сайта с анонимной вкладки или другого устройства, возможно в .htaccess задано ограничение, например http-авторизация

  • Не привязано доменное имя

Что делать: проверьте A записи домена в панеле управления доменного имени

  • Введен недопустимый DNS или он введет не на текущий сайт

Что делать: проверьте открытие сайта с тех DNS, которые вводили на этапе установки. Сайт должен открываться по ним. Например, www.test.ru, test.ru

  • Неправильные настройки конфигурации сервера

Что делать: загляните в конфигурацию nginx на наличие установленных директив подключения сертификата

  • Слишком много запросов к сервису Let’s Encrypt

Что делать: у сервиса есть ограничение на количество запросов. Если случилась эта ошибка, попробуйте на следующий день повторить процедуру

Как сгенерировать SSL на сайт другой платформы

Если у вас сайт не на Битриксе, а допустим какой-нибудь WordPress, то вы, скорее всего, не сможете создать для него сертификат через VM-Bitrix. Но можно схитрить:

  • В папке /home/bitrix/dehydrated/domains/ создаем текстовый файл с названием вашего домена. Например, test.web-masterok.ga.txt
  • В созданный файл добавляем название доменного имени test.web-masterok.ga

Просто вносим название сайта

Просто вносим название сайта

И теперь запускаем файл /home/bitrix/dehydrated/dehydrated с ключом -c.

Так происходит проверка на валидность. В случае добавления, произойдет запрос сертификата для добавленного сайта

Так происходит проверка на валидность. В случае добавления, произойдет запрос сертификата для добавленного сайта

Механизм пройдет по всем существующим сертификатам и проверит их на валидность. Для нового запросит сертификат.

Все созданные сертификаты помещаются в папку /home/bitrix/dehydrated/certs/ – там будет лежать и новый сертификат.

Остается только подключить сертификат в конфигурации nginx по пути /etc/nginx/bx/site_avaliable/bx_ext_ssl_test.web-masterok.ga в пределах директивы server:

include bx/conf/ssl_option.conf;

ssl_certificate /home/bitrix/dehydrated/certs/test.web-masterok.ga/fullchain.pem;

ssl_certificate_key /home/bitrix/dehydrated/certs/test.web-masterok.ga/privkey.pem;

ssl_trusted_certificate /home/bitrix/dehydrated/certs/test.web-masterok.ga/chain.pem;

Вот как-то так в пределах директивы server

Вот как-то так в пределах директивы server

Затем проверяем с помощью консольной команды sudo nginx -t корректность внесенных правок в конфигурацию. Если все хорошо, перезагружаем nginx. Сертификат должен подключится.

Заключение

Вот так вы можете подключить на свой сайт бесплатный SSL, который по истечению срока будет обновлен. В ближайшее время я опубликую статью, где расскажу как установить свой собственный сертификат и перевести сайт на https.

Понравилась статья? Поделить с друзьями:
  • Bitrix entity error
  • Bitrix element update error
  • Bitrix element add error
  • Bitrix db last error
  • Bitrix controller error