Gitlab con el certificado Let's Encrypt: actualice su cliente ACME a ACMEv2

8

Tenía Gitlab instalado en Ubuntu 14.04. No se pudo renovar el certificado Let's Encrypt. He actualizado Ubuntu a 16.04 y luego apt-get update && apt-get upgrade pero parece que no actualizó el cliente ACME a v2 que me permitiría actualizar un certificado. ¿Cómo puedo actualizar un certificado?

gitlab-cli renew-le-certs 

resultados en:

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.
correo no deseado
fuente
¿Lo intentaste gitlab-ctl renew-le-certs?
Zeitounator
Sí, un error es: letsencrypt_certificate [elenx.net] (letsencrypt :: http_authorization line 3) tuvo un error: Acme :: Client :: Error :: No autorizado: acme_certificate [staging] (/ opt / gitlab / embedded / cookbooks / cache /cookbooks/letsencrypt/resources/certificate.rb línea 20) tuvo un error: Acme :: Cliente :: Error :: No autorizado: La creación de cuenta en ACMEv1 está deshabilitada. Actualice su cliente ACME a una versión que admita ACMEv2 / RFC 8555. Consulte community.letsencrypt.org/t/end-of-life-plan-for-acmev1/88430 para obtener más detalles.
spam
No publique información adicional en los comentarios, edite su pregunta en su lugar.
Zeitounator
Tienes razón, lo he añadido a la pregunta.
spam
Mientras lo hace, también puede formatear el mensaje de error correctamente en un bloque de código,
Zeitounator

Respuestas:

8

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

Interesante dilema. Hemos actualizado el cliente ACME en! 3420 (combinado) en GitLab 12.1, pero no podrá actualizarlo hasta que pueda volver a configurarlo correctamente.

Entonces necesita actualizar a gitlab> = 12.1

  1. Apague letsencrypt: busque nano /etc/gitlab/gitlab.rb algunas páginas hacia abajo letsencrypt['enable'] = truey configúrelo para falseguardar

  2. Actualice a la última versión de su versión principal apt-get upgrade gitlab-ee=11.11.8

  3. correr gitlab-ctl reconfigure

  4. Actualiza a Gitlab 12 apt-get upgrade gitlab-ee

  5. correr gitlab-ctl reconfigure

  6. Reiniciar sudo reboot

  7. Volver letsencrypt['enable'] = trueen/etc/gitlab/gitlab.rb

  8. correr gitlab-ctl reconfigure

  9. correr gitlab-ctl renew-le-certs

Ryabchenko Alexander
fuente
1
Puede que tenga que ir a una versión de medio paso antes del 11.11.8. Por ejemplo: primero tuve que actualizar a 11.4.7-ee.0 y luego a 11.11.8. Puede enumerar las versiones disponibles con: sudo apt list -a
--updable
1

Me enfrenté a un problema similar. Los pasos mencionados por @Ryabchenko son perfectos.

Estoy agregando algunos pasos más.

  • Elimine los certificados antiguos de / etc / gitlab / ssl / (después del paso no 6 en la respuesta de @Ryabchenko)

  • Recibirá un error en lin 20. Si alguien recibe un error en la línea 25, que es

RuntimeError: acme_certificate [puesta en escena]

luego agregue la siguiente línea en gitlab.rb

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

Nota : He mencionado los pasos detallados aquí: https://gitlab.com/gitlab-org/omnibus-gitlab/issues/4900#note_292031191

Manan Shah
fuente