Статьи

Установка LetsEncrypt SSL-сертифікатів прямо з панелі віртуальної машини bitrix VM!

  1. Як встановити безкоштовний ssl сертифікат від Lets Encrypt в бітрікс-машині?
  2. Що робити, якщо сертифікат не встановлюється і бітрікс машина видає помилку?

З версії 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, підтвердити введення.

приклад:

З версії 7

Майстер самостійно запросить і встановить сертифікат з мережі.
Підтримується введення декількох сайтів, через кому (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 ".

Використані матеріали:


Назад в розділ

Як встановити безкоштовний ssl сертифікат від Lets Encrypt в бітрікс-машині?
Що робити, якщо сертифікат не встановлюється і бітрікс машина видає помилку?
Що робити, якщо сертифікат не встановлюється і бітрікс машина видає помилку?

Новости