• 0

(Пере)выпуск wildcard сертификатов Let's Encrypt для своего домена


Question

Recommended Posts

  • 0
8 часов назад, -iliya- сказал:

а к чему все это - DSM и так сама умеет получать lets encrypt серты и регулярно из обновлять

Если только дело в Wildcard - то у меня dsm для 3х поддоменов сама и запрашивает.

А если надо больше так не проще купить годовой - явно же что больше 2-3 поддоменов это коммерческое использование.

У меня как-то сходу не получилось, я не стал больше пытаться: порты нестандартные, открывать все не хочу каждый раз. Пробовал недавно, DSM чё-то не может достучаться и получить сертификат. А я уже забыл что делал, плюнул в общем.

Link to post
Share on other sites
  • 0

все элементарно - нужен хотя бы 80 открыть или 443, остальные не работают

DSM по умолчанию если нет web сервера 80 переводит на свой 5000

а 443 на 5001.

Ну и соответственно не обязательно открывать порт на порт

например у меня на роутере открыт 21 порт ведущий на 24 DSM и тд

 

Edited by -iliya-
Link to post
Share on other sites
  • 0

image.png.15bd348f3c2154df20da99e1cde8a5f4.png

Попытался. Получил вот такое, очень информативное сообщение. :)

По прежнему жду проверку решения с acme.sh.

Edited by sotaka
Link to post
Share on other sites
  • 0
В 15.08.2021 в 10:13, sotaka сказал:

Попытался. Получил вот такое, очень информативное сообщение.

Ip белый и выделенный?

на роутере проброшен хотя бы 80 порт на 80 или на 5000 порт хрени?

в DNS регистратора есть запись  A твоего домена на твой IP?

В DSM не больше 2х поддоменов указываешь? Например test.ru, www.test.ru, ftp.test.ru

Если все да то будет работать, в противном случае будут проблемы с обновлением или созданием.

 

А и еще с какого то момента в старых версиях DSM перестал работать let's encrypt - они выпускали обновление, возможно как раз обновили алгоритм запроса сертов.

Вот VPN сервер хочет обновиться иначе перестанет выпускать серты с сентября.

Edited by -iliya-
Link to post
Share on other sites
  • 0
On 8/6/2021 at 11:18 PM, Arabezar said:

Где-нить в сентябре придётся опять перевыпускать сертификат - отпишусь.

У меня основная проблема была не с перевыпуском сертификата, здесь всё работало нормально, а с запуском второго скрипта, копирующего новый сертификат во все приложения системы, из-за 2FA (двухфакторной авторизации), ибо header при обновлении сертификата тоже меняется, соответственно, скрипт надо каждый раз корректировать, что не удобно. Решением был бы вызов копирования сертификата средствами командной строки, а не не через WebAPI.

Как и говорил, всё нормально обновилось, но предварительно пришлось обновить скрипт из-за 2FA (двухфакторной авторизации).

 

On 8/13/2021 at 9:34 AM, -iliya- said:

а к чему все это - DSM и так сама умеет получать lets encrypt серты и регулярно из обновлять

Если только дело в Wildcard - то у меня dsm для 3х поддоменов сама и запрашивает.

А если надо больше так не проще купить годовой - явно же что больше 2-3 поддоменов это коммерческое использование.

В точку! Именно ради wildcard! Иначе бы не заморачивался.

Хм... У меня 6 виртуальных хостов на WebStation (и это не предел)… и все некоммерческие… и это не считая опубликованных стандартных приложений.

Edited by Arabezar
Link to post
Share on other sites
  • 0
12 часа назад, Arabezar сказал:

Как и говорил, всё нормально обновилось, но предварительно пришлось обновить скрипт из-за 2FA (двухфакторной авторизации).

 

В точку! Именно ради wildcard! Иначе бы не заморачивался.

Хм... У меня 6 виртуальных хостов на WebStation (и это не предел)… и все некоммерческие… и это не считая опубликованных стандартных приложений.

Пруф будет? Я не разобрался что ему нужно в скрипте. У меня даже новые получить на получилось. На работающем официальном девайсе скрипт вроде отрабатывает, по логам. но почему-то не производит замену сертификата: его дата не меняется во вкладке "Безопасность". В логе ошибок нет вообще, как ни странно. Ну с этим думаю подождать, а вот со своим домашним - затык, пришлось делать вручную.

Link to post
Share on other sites
  • 0
On 9/10/2021 at 3:56 PM, sotaka said:

Пруф будет? Я не разобрался что ему нужно в скрипте. У меня даже новые получить на получилось. На работающем официальном девайсе скрипт вроде отрабатывает, по логам. но почему-то не производит замену сертификата: его дата не меняется во вкладке "Безопасность". В логе ошибок нет вообще, как ни странно. Ну с этим думаю подождать, а вот со своим домашним - затык, пришлось делать вручную.

Ок, давайте разбираться.

Пункт инструкции «3. Updating cert» работает?
Я бы проверял работу этого пункта в терминале, там сразу видно, что пошло не так.

  • Like 1
Link to post
Share on other sites
  • 0
10 часов назад, Arabezar сказал:

Ок, давайте разбираться.

Пункт инструкции «3. Updating cert» работает?
Я бы проверял работу этого пункта в терминале, там сразу видно, что пошло не так.

Всё убрал и начал сначала.

В ответ на скрипт:

 

./acme.sh  --issue --debug 2 -d *.mydomen.ru --dns dns_cf --yes-I-know-dns-manual-mode-enough-go-ahead-please

получаю в логах:

You didn't specify a Cloudflare api key and email yet.
You can get yours from here https://dash.cloudflare.com/profile.

Я зарегился на https://dash.cloudflare.com, но откровенно не понял зачем мне это.

Видимо скрипт пытается автоматически добавить запись в поле txt, но поскольку у него априори нет таких прав, он выводит это.

Пробовал сам вписывать txt-поле, взяв его из лога, но скрипт на следующий запрос "--renew" - генерирует новую комбинацию и всё так же ругается:

ash-4.3# ./acme.sh -d *.mydomen.ru --renew --yes-I-know-dns-manual-mode-enough-go-ahead-please
[Fri Nov  5 10:01:16 +04 2021] Renew: '*.mydomen.ru'
[Fri Nov  5 10:01:18 +04 2021] Using CA: https://acme.zerossl.com/v2/DV90
[Fri Nov  5 10:01:18 +04 2021] Single domain='*.mydomen.ru'
[Fri Nov  5 10:01:18 +04 2021] Getting domain auth token for each domain
[Fri Nov  5 10:01:21 +04 2021] Getting webroot for domain='*.mydomen.ru'
[Fri Nov  5 10:01:22 +04 2021] Adding txt value: nHzsST-zr1f4r2PoMu4daaW25nBMGDWHIUYgJSc_l_Gy-Q for domain:  _acme-challenge.mydomen.ru
[Fri Nov  5 10:01:22 +04 2021] You didn't specify a Cloudflare api key and email yet.
[Fri Nov  5 10:01:22 +04 2021] You can get yours from here https://dash.cloudflare.com/profile.
[Fri Nov  5 10:01:22 +04 2021] Error add txt for domain:_acme-challenge.mydomen.ru
[Fri Nov  5 10:01:22 +04 2021] Please check log file for more details: /var/log/acme.sh.log

Нашёл мануал: https://github.com/acmesh-official/acme.sh/wiki/dnsapi

Но мой домен на beget.ru, к которому по ссылке выше нет описания. И хотя я нашёл упоминание об API на https://beget.com/ru/kb/api/funkczii-upravleniya-dns#changerecords - мне не нравится эта идея в принципе, зачем так усложнили? Почему нельзя сделать этого самому, вручную, как ранее?

Edited by sotaka
Link to post
Share on other sites
  • 0

Наткнулся на ещё один мануал по acme, отпишусь что вышло.

 

UPD.

Нашёл ошибки в своём скрипте, обновил и конкретизировал для себя неточности мануала. В ручном режиме всё заработало. Посмотрю как сработает скрипт в автоматическом режиме, отпишусь на днях.

Edited by sotaka
Link to post
Share on other sites
  • 0
9 hours ago, sotaka said:

./acme.sh  --issue --debug 2 -d *.mydomen.ru --dns dns_cf --yes-I-know-dns-manual-mode-enough-go-ahead-please

Инструкция в данной ветке (конкретнее, пункт 2) предназначена для собственного Synology DNS Server. К сожалению, я уже не могу поменять название ветки и добавить туда эту информацию. Скрипт acme.sh поддерживает много провайдеров DNS, список постоянно расширяется. Для каждого требуется свой подход, Cloud Flare в нём первый, но он Вам не нужен, см. ниже…

 

9 hours ago, sotaka said:

Но мой домен на beget.ru, к которому по ссылке выше нет описания.

Да, т.к. для Вашего провайдера DNS пока никто скрипт для acme.sh не написал, в Вашем случае необходимо всё далать вручную, следуя приведённой Вами же ссылке на Beget.API

 

2 hours ago, sotaka said:

Посмотрю как сработает скрипт в автоматическом режиме, отпишусь на днях.

Вы уже написали скрипт для провайдера Beget.ru?

Edited by Arabezar
Link to post
Share on other sites
  • 0
3 часа назад, Arabezar сказал:

Инструкция в данной ветке (конкретнее, пункт 2) предназначена для собственного Synology DNS Server. К сожалению, я уже не могу поменять название ветки и добавить туда эту информацию. Скрипт acme.sh поддерживает много провайдеров DNS, список постоянно расширяется. Для каждого требуется свой подход, Cloud Flare в нём первый, но он Вам не нужен, см. ниже…

 

Да, т.к. для Вашего провайдера DNS пока никто скрипт для acme.sh не написал, в Вашем случае необходимо всё делать вручную, следуя приведённой Вами же ссылке на Beget.API

 

Вы уже написали скрипт для провайдера Beget.ru?

Нет, я считаю лишним возиться с API. Всё банально: просто наткнулся на пример, где автор объясняет как заставить скрипт работать без API, в отличие от метода с алиасом (>_< )

Цитата

./acme.sh  --issue --debug 2 -d *.mydomen.ru --dns dns_cf --yes-I-know-dns-manual-mode-enough-go-ahead-please

Помеченное красным надо убрать, тогда скрипт выдаст ключ поля TXT для внесения в DNS-запись и далее - будет сличать его в --renew.

Вроде бы ключ остаётся постоянным и при обновлении сертификата его менять не нужно, так что... на моей железке обновление сертификата сработало вручную и я жду отработки скрипта --renew по расписанию. А пока проверяю эти свои шаги на другой железке.

Link to post
Share on other sites
  • 0
1 hour ago, sotaka said:

Помеченное красным надо убрать

Также надо убрать --dns

 

47 minutes ago, sotaka said:

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

Мне кажется, текстовый ключ меняется.

Ждать придётся 2 месяца по умолчанию (60 дней, если точнее)))

Для мгновенного перевыпуска требуется ключ --force

Link to post
Share on other sites
  • 0

В общем скрипт авто-продления отработал ок, я проверил на заводском NAS и по этой же методике получил сертификат ещё на одной ХРени. На счёт того что ключ может меняться - будем посмотреть. Прилагаю инструкцию, может надо кому. Просьба маякнуть если ошибку там увидите или неточность.

Обновление_сертификатов_SSL_06112021.pdf

Link to post
Share on other sites
  • 0

Обновились сертификаты по https://xpenology.com/forum/topic/49308-how-to-update-lets-encrypt-root-certificate/?tab=comments#comment-220109
ПОсле
sudo mv /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt.bak && sudo curl -Lko /etc/ssl/certs/ca-certificates.crt https: // curl .se / ca / cacert.pem
И сообщество SynoCommunity появилось

Link to post
Share on other sites
  • 0

Привет всем.

Столкнулся с тем что скрипт не может обновить запись сертификата автоматически. Вдобавок, мой провайдер DNS не имеет API или не рассказывает о нём. Выкладываю переделанную инструкцию для ручного обновления записи сертификата.

Обновление_сертификатов_SSL_вручную_23012022.pdf

  • Thanks 1
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.