Letsencrypt додає домен до існуючого сертифіката [закрито]


122

Я просто намагаюся додати домен test.example.comдо сертифіката, який вже існує example.com. Як додати домен до існуючого сертифіката та замінити старий сертифікат?

Я спробував ці кілька команд

./letsencrypt-auto certonly --cert-path /etc/letsencrypt/archive/example.com --expand -d test.example.com

./letsencrypt-auto certonly -d example.com --expand -d test.example.com

Результат: обидва створили абсолютно новий сертифікат у новій папці test.example.com-0001

./letsencrypt-auto certonly --renew-by-default  --expand -d test.example.com

Результат: папка помилок test.example.com вже існує.

./letsencrypt-auto renew --expand -d orange.fidka.com

Результат: помилка, я можу поновити лише тоді, коли термін дії мого сертифікату закінчився.


1
Це запитання було відкрито на сайті Super User: superuser.com/questions/1432541/…
Майк Годін

1
Кожен, хто зараз переглядає це питання: я б рекомендував ознайомитись з відповіддю на суперпользователя . Він використовує, certbot --expandщо ближче до того, що задає це питання imo
Jesse Reza Khorasanee

Відповіді:


134

Вам потрібно вказати всі імена, включаючи вже зареєстровані.

Я використовував таку команду, щоб спочатку зареєструвати деякі сертифікати:

/opt/certbot/certbot-auto certonly --webroot --agree-tos -w /srv/www/letsencrypt/ \
--email me@example.com \
--expand -d example.com,www.example.com

... і тепер я успішно використав таку команду, щоб розширити реєстрацію, щоб включити новий піддомен як SAN:

/opt/certbot/certbot-auto certonly --webroot --agree-tos -w /srv/www/letsencrypt/ \
--expand -d example.com,www.example.com,click.example.com

З документації :

--expand "Якщо наявний сертифікат охоплює деякий підмножина запитуваних імен, завжди розгортайте та замінюйте його додатковими іменами."

Не забудьте перезапустити сервер для завантаження нових сертифікатів, якщо ви працюєте nginx.


2
Команда трохи змінилася наcertbot-auto certonly -a webroot ...
цусанка

1
це працює для самостійного плагіна?
hjl

Коли я використовую вищезазначене, він створює новий сертифікат самостійно, з а -001в кінці.
Хофі

Розташовувати це на виробництві, розширення, здається, не вимагає видимого часу вниз Я використовував certbot-auto
Ray Foss

@ simon-hampel Коли розширюється сертифікат SSL, чи подовжує він термін дії для всіх доменів, визначених у списку.
Ерсін Деміртас

34

Ось як я зареєстрував свій домен:

sudo letsencrypt --apache -d mydomain.com

Тоді можна було використовувати ту саму команду з додатковими доменами і слідувати інструкціям:

sudo letsencrypt --apache -d mydomain.com,x.mydomain.com,y.mydomain.com

3
я просто замінити letsencryptз , ./certbot-autoі це працює! Команда ./certbot-auto --nginx -d domain1.com,domain2.comзапитає, чи хочу я розширити існуючий сертифікат і виконує завдання.
Джордж

1
Дякую. Це економить мій час. Я біжу./letsencrypt-auto --debug -d new-domain.com -d new-alias.com
Нгуен Ван Він,

30

Apache в Ubuntu , використовуючи плагін Apache:

sudo certbot certonly --cert-name example.com -d m.example.com,www.m.example.com

Наведена вище команда яскраво пояснена в посібнику користувача Certbot щодо зміни доменних імен сертифіката . Зауважте, що команда зміни доменних імен сертифіката застосовується і до додавання нових імен домену.

Редагувати

Якщо запустити вищевказану команду, ви отримаєте повідомлення про помилку

Клієнт з обраним автентифікатором на даний момент не підтримує жодної комбінації викликів, які задовольнять КА.

дотримуйтесь цих інструкцій спільноти Let’s Encrypt


2
Це, мабуть, згадується в документації, але якщо ви просто додаєте до існуючого, вам потрібно знову додати наявний домен - або він буде видалений
Роб

5

Ви можете замінити сертифікат, просто знову запустивши certbot ./certbot-auto certonly

Вам буде запропоновано це повідомлення, якщо ви спробуєте створити сертифікат для домену, який ви вже охопили наявним сертифікатом:

-------------------------------------------------------------------------------
You have an existing certificate that contains a portion of the domains you
requested (ref: /etc/letsencrypt/renewal/<domain>.conf)

It contains these names: <domain>

You requested these names for the new certificate: <domain>,
<the domain you want to add to the cert>.

Do you want to expand and replace this existing certificate with the new
certificate?
-------------------------------------------------------------------------------

Просто вибрав Expandі замінив.


5

Мені вдалося встановити SSL, сертифікований для домену AND декількох піддоменів, використовуючи --cert-nameкомбінований з--expand параметрами.

Дивіться офіційну документацію certbot-auto на веб- сайті https://certbot.eff.org/docs/using.html

Приклад:

certbot-auto certonly --cert-name mydomain.com.br \
--renew-by-default -a webroot -n --expand \
--webroot-path=/usr/share/nginx/html \
-d mydomain.com.br \
-d www.mydomain.com.br \
-d aaa1.com.br \
-d aaa2.com.br \
-d aaa3.com.br

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.