Letsencrypt Domain zum vorhandenen Zertifikat hinzufügen [geschlossen]

122

Ich versuche nur, die Domain test.example.comdem Zertifikat hinzuzufügen, für das bereits existiert example.com. Wie füge ich meinem vorhandenen Zertifikat eine Domain hinzu und ersetze das alte Zertifikat?

Ich habe diese wenigen Befehle ausprobiert

./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

Ergebnis: Beide haben ein brandneues Zertifikat in einem neuen Ordner test.example.com-0001 erstellt

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

Ergebnis: Fehlerordner test.example.com existiert bereits.

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

Ergebnis: Fehler, ich kann nur verlängern, wenn mein Zertifikat abgelaufen ist.

Jeff Davenport
quelle
1
Diese Frage wurde auf Super User wieder geöffnet: superuser.com/questions/1432541/…
Mike Godin
1
Jedem, der diese Frage jetzt sieht: Ich würde empfehlen, die Antwort auf Superuser zu lesen . Es verwendet, certbot --expandwas näher an dem ist, was diese Frage imo stellt
Jesse Reza Khorasanee

Antworten:

134

Sie müssen alle Namen angeben, einschließlich der bereits registrierten.

Ich habe ursprünglich den folgenden Befehl verwendet, um einige Zertifikate zu registrieren:

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

... und gerade jetzt habe ich den folgenden Befehl erfolgreich verwendet, um meine Registrierung um eine neue Subdomain als SAN zu erweitern:

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

Aus der Dokumentation :

--expand "Wenn ein vorhandenes Zertifikat eine Teilmenge der angeforderten Namen abdeckt, erweitern Sie es immer und ersetzen Sie es durch die zusätzlichen Namen."

Vergessen Sie nicht, den Server neu zu starten, um die neuen Zertifikate zu laden, wenn Sie nginx ausführen.

Simon Hampel
quelle
2
Der Befehl änderte sich leicht zucertbot-auto certonly -a webroot ...
Tsusanka
1
funktioniert es für Standalone-Plugin?
hjl
Wenn ich das oben genannte verwende, erstellt es selbst ein neues Zertifikat mit einem -001am Ende.
KhoPhi
Läuft es in der Produktion, scheint die Erweiterung keine sichtbaren Ausfallzeiten zu erfordern. Ich habe certbot-auto
Ray Foss
@ simon-hampel Wenn das SSL-Zertifikat erweitert wird, wird das Ablaufdatum für alle in der Liste definierten Domänen verlängert.
Ersin Demirtas
34

So habe ich meine Domain registriert:

sudo letsencrypt --apache -d mydomain.com

Dann war es möglich, denselben Befehl mit zusätzlichen Domänen zu verwenden und die Anweisungen zu befolgen:

sudo letsencrypt --apache -d mydomain.com,x.mydomain.com,y.mydomain.com
embe
quelle
3
i nur ersetzt letsencryptmit ./certbot-autound es funktioniert! Befehl ./certbot-auto --nginx -d domain1.com,domain2.comfragen, ob ich vorhandenes Zertifikat erweitern möchte und erledigt den Job.
George
1
Vielen Dank. Das spart mir Zeit. Ich renne./letsencrypt-auto --debug -d new-domain.com -d new-alias.com
Nguyen Van Vinh
30

Apache unter Ubuntu mit dem Apache-Plugin:

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

Der obige Befehl wird im Certbot-Benutzerhandbuch zum Ändern der Domänennamen eines Zertifikats anschaulich erläutert . Beachten Sie, dass der Befehl zum Ändern der Domänennamen eines Zertifikats auch für das Hinzufügen neuer Domänennamen gilt.

Bearbeiten

Wenn Sie den obigen Befehl ausführen, wird die Fehlermeldung angezeigt

Der Client mit dem aktuell ausgewählten Authentifikator unterstützt keine Kombination von Herausforderungen, die die Zertifizierungsstelle erfüllen.

Befolgen Sie diese Anweisungen in der Let's Encrypt Community

che-azeh
quelle
2
Es wird wahrscheinlich in der Dokumentation erwähnt, aber wenn Sie nur zu vorhandenen hinzufügen, müssen Sie die vorhandene Domain erneut hinzufügen - oder es wird entfernt
Rob
5

Sie können das Zertifikat ersetzen, indem Sie den certbot einfach erneut mit ausführen ./certbot-auto certonly

Sie werden mit dieser Meldung aufgefordert, wenn Sie versuchen, ein Zertifikat für eine Domäne zu generieren, die bereits von einem vorhandenen Zertifikat abgedeckt wird:

-------------------------------------------------------------------------------
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?
-------------------------------------------------------------------------------

Einfach auswählen Expandund ersetzen.

Ahmad
quelle
5

Ich konnte ein SSL-Zertifikat für eine Domain UND mehrere Subdomains mithilfe von --cert-namekombiniert mit einrichten--expand Optionen verwendete.

Siehe die offizielle certbot-auto-Dokumentation unter https://certbot.eff.org/docs/using.html

Beispiel:

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
newx
quelle
4

das hat bei mir funktioniert

 sudo letsencrypt certonly -a webroot --webroot-path=/var/www/html -d
 domain.com -d www.domain.com
Ich weiß nichts
quelle