Gitlab com o certificado Let's Encrypt: atualize seu cliente ACME para ACMEv2

8

Eu tinha o Gitlab instalado no Ubuntu 14.04. Não foi possível renovar o certificado Let's Encrypt. Atualizei o Ubuntu para 16.04 e, em seguida, apt-get update && apt-get upgrade, mas parece que ele não atualizou o cliente ACME para a v2, o que me permitiria atualizar um certificado. Como posso atualizar um certificado?

gitlab-cli renew-le-certs 

resulta em:

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.
Spam
fonte
Você tentou gitlab-ctl renew-le-certs?
Zeitounator 11/11/19
Sim, um erro é: letsencrypt_certificate [elenx.net] (letsencrypt :: http_authorization line 3) teve um erro: Acme :: Client :: Error :: Não autorizado: acme_certificate [staging] (/ opt / gitlab / embedded / cookbooks / cache /cookbooks/letsencrypt/resources/certificate.rb linha 20) teve um erro: Acme :: Client :: Error :: Unauthorized: A criação da conta no ACMEv1 está desativada. Atualize seu cliente ACME para uma versão compatível com o ACMEv2 / RFC 8555. Consulte community.letsencrypt.org/t/end-of-life-plan-for-acmev1/88430 para obter detalhes.
spam
Não poste informações adicionais nos comentários, edite sua pergunta.
Zeitounator 11/11/19
Você está certo, eu o adicionei à pergunta.
spam
Enquanto o seu está nisso, você pode também formatar a mensagem de erro corretamente em um bloco de código,
Zeitounator

Respostas:

8

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

Dilema interessante. Atualizamos o cliente ACME no! 3420 (mesclado) no GitLab 12.1, mas você está impedido de atualizar até conseguir uma reconfiguração bem-sucedida.

Então, você precisa atualizar para o gitlab> = 12.1

  1. Desative o letsencrypt: nano /etc/gitlab/gitlab.rb algumas páginas abaixo procure: letsencrypt['enable'] = truee configure-o para falsesalvar

  2. Atualize para a versão mais recente da sua versão principal apt-get upgrade gitlab-ee=11.11.8

  3. Corre gitlab-ctl reconfigure

  4. Atualize para o Gitlab 12 apt-get upgrade gitlab-ee

  5. Corre gitlab-ctl reconfigure

  6. Reiniciar sudo reboot

  7. Retorno letsencrypt['enable'] = trueem/etc/gitlab/gitlab.rb

  8. Corre gitlab-ctl reconfigure

  9. Corre gitlab-ctl renew-le-certs

Ryabchenko Alexander
fonte
1
Talvez você precise ir para a versão intermediária antes da 11.11.8. Por exemplo: eu tive que atualizar para 11.4.7-ee.0 primeiro e depois 11.11.8. Você pode listar as versões disponíveis com: sudo apt list -a --upgradable
SpiRail
1

Eu enfrentei um problema semelhante. Os passos mencionados por @Ryabchenko são perfeitos.

Estou adicionando mais alguns passos.

  • Remova os certificados antigos de / etc / gitlab / ssl / (após a etapa 6 na resposta de @Ryabchenko)

  • Você está recebendo um erro na linha 20. Se alguém receber um erro na linha 25, que é

RuntimeError: acme_certificate [teste]

adicione a seguinte linha no gitlab.rb

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

Nota : Mencionei as etapas detalhadas aqui: https://gitlab.com/gitlab-org/omnibus-gitlab/issues/4900#note_292031191

Manan Shah
fonte