Gitlab mit Let's Encrypt-Zertifikat: Aktualisieren Sie Ihren ACME-Client auf ACMEv2


8

Ich hatte Gitlab unter Ubuntu 14.04 installiert. Das Zertifikat "Let's Encrypt" konnte nicht erneuert werden. Ich habe Ubuntu auf 16.04 aktualisiert und dann apt-get update && apt-get upgrade, aber es scheint, dass der ACME-Client nicht auf v2 aktualisiert wurde, wodurch ich ein Zertifikat aktualisieren könnte. Wie kann ich ein Zertifikat aktualisieren?

gitlab-cli renew-le-certs 

Ergebnisse in:

letsencrypt_certificate[elenx.net] (letsencrypt::http_authorization
line 3) had an error: Acme::Client::Error::Unauthorized:
acme_certificate[staging]
(/opt/gitlab/embedded/cookbooks/cache/cookbooks/letsencrypt/resources/certificate.rb
line 20) had an error: Acme::Client::Error::Unauthorized: 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.

Hast du es versucht gitlab-ctl renew-le-certs?
— Zeitounator

Ja, ein Fehler ist: letsencrypt_certificate [elenx.net] (letsencrypt :: http_authorization Zeile 3) hatte einen Fehler: Acme :: Client :: Error :: Unauthorized: acme_certificate [Staging] (/ opt / gitlab / embedded / cookbooks / cache) /cookbooks/letsencrypt/resources/certificate.rb Zeile 20) hatte einen Fehler: Acme :: Client :: Error :: Unauthorized: Die Kontoerstellung auf ACMEv1 ist deaktiviert. Aktualisieren Sie Ihren ACME-Client auf eine Version, die ACMEv2 / RFC 8555 unterstützt. Weitere Informationen finden Sie unter community.letsencrypt.org/t/end-of-life-plan-for-acmev1/88430 .
— Spam

Bitte posten Sie keine zusätzlichen Informationen in Kommentaren, sondern bearbeiten Sie stattdessen Ihre Frage.
— Zeitounator

Sie haben Recht, ich habe es zur Frage hinzugefügt.
— Spam

Während Sie gerade dabei sind, können Sie die Fehlermeldung auch in einem Codeblock korrekt
— formatieren.

Antworten:


8

https://gitlab.com/gitlab-org/omnibus-gitlab/issues/4614#note_232009029

Interessantes Dilemma. Wir haben den ACME-Client in! 3420 (zusammengeführt) in GitLab 12.1 aktualisiert, aber Sie können kein Upgrade durchführen, bis Sie eine erfolgreiche Neukonfiguration erhalten.

Sie müssen also auf gitlab> = 12.1 aktualisieren

  1. Deaktivieren Sie letsencrypt: Suchen Sie nano /etc/gitlab/gitlab.rb ein paar Seiten weiter nach: letsencrypt['enable'] = trueund setzen Sie es auf falseSpeichern

  2. Aktualisieren Sie auf die neueste Version Ihrer Hauptversion apt-get upgrade gitlab-ee=11.11.8

  3. Lauf gitlab-ctl reconfigure

  4. Upgrade auf Gitlab 12 apt-get upgrade gitlab-ee

  5. Lauf gitlab-ctl reconfigure

  6. Starten Sie neu sudo reboot

  7. Kehre letsencrypt['enable'] = truezurück/etc/gitlab/gitlab.rb

  8. Lauf gitlab-ctl reconfigure

  9. Lauf gitlab-ctl renew-le-certs


1
Möglicherweise müssen Sie vor dem 11.11.8 zu einer Middle-Step-Version wechseln. Zum Beispiel: Ich musste zuerst auf 11.4.7-ee.0 und dann auf 11.11.8 aktualisieren. Sie können verfügbare Versionen auflisten mit: sudo apt list -a --upgradable
— SpiRail

1

Ich hatte ein ähnliches Problem. Die von @Ryabchenko erwähnten Schritte sind perfekt.

Ich füge noch ein paar Schritte hinzu.

  • Entfernen Sie die alten Zertifikate aus / etc / gitlab / ssl / (nach Schritt Nr. 6 in der Antwort von @Ryabchenko)

  • Sie erhalten einen Fehler in Zeile 20. Wenn jemand in Zeile 25 einen Fehler erhält, ist dies der Fall

RuntimeError: acme_certificate [Staging]

Fügen Sie dann die folgende Zeile in gitlab.rb hinzu

nginx['custom_gitlab_server_config'] = "location /.well-known/acme-challenge/ {\n root /var/opt/gitlab/nginx/www/; \n}\n" 

Hinweis : Ich habe die detaillierten Schritte hier erwähnt: https://gitlab.com/gitlab-org/omnibus-gitlab/issues/4900#note_292031191

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.