Repository navigation
500 Internal Service Error on new cert order #1
Description
Activity
@michaelmedellin you need to add a set-header in the acme-ca listener such as the following:
http-request set-header Host acme-v02.api.letsencrypt.orgIt looks like this issue is still a thing... perhaps related to ACME v2?
ingrid_1 | 0000000d:acme-ca.clireq[001a:ffffffff]: GET /acme/authz-v3/54535395 HTTP/1.1 ingrid_1 | 0000000d:acme-ca.clihdr[001a:ffffffff]: host: 127.0.0.1:9012 ingrid_1 | 0000000d:acme-ca.clihdr[001a:ffffffff]: accept: */* ingrid_1 | 0000000d:acme-ca.clihdr[001a:ffffffff]: user-agent: haproxy-lua-http/1.0 ingrid_1 | 0000000d:acme-ca.srvrep[001a:001b]: HTTP/1.1 405 Method Not Allowed ingrid_1 | 0000000d:acme-ca.srvhdr[001a:001b]: server: nginx ingrid_1 | 0000000d:acme-ca.srvhdr[001a:001b]: date: Wed, 06 May 2020 16:31:58 GMT ingrid_1 | 0000000d:acme-ca.srvhdr[001a:001b]: content-type: application/problem+json ingrid_1 | 0000000d:acme-ca.srvhdr[001a:001b]: content-length: 103 ingrid_1 | 0000000d:acme-ca.srvhdr[001a:001b]: cache-control: public, max-age=0, no-cache ingrid_1 | 0000000d:acme-ca.srvhdr[001a:001b]: link: <https://acme-staging-v02.api.letsencrypt.org/directory>;rel="index" ingrid_1 | 0000000d:acme-ca.srvcls[001a:001b] ingrid_1 | 0000000d:acme-ca.clicls[001a:001b] ingrid_1 | 0000000d:acme-ca.closed[001a:001b] ingrid_1 | (table) table: 0x5622f280fba0 [ ingrid_1 | "detail": (string) "Method not allowed" ingrid_1 | "type": (string) "urn:ietf:params:acme:error:malformed" ingrid_1 | "status": (number) 405 ingrid_1 | ]I don't think it's correct to be performing a
GETon the authorization. Could someone confirm this is working with LetsEncrypt v2 staging endpoint, at least to save me trying to diagnose something which isn't broken?Yeah, I can confirm that the errors are due to the deprecation of
GETrequests in v2 and switching toPOST-as-GETworked in the end. I will try and PR a fix for you guys 👍Hello Rich,
Yep, v1 API is depreciated, we're planning upgrade for a long time, but PR are always welcome :-)
Can you please update the README on the front page? I just spent quite a long time setting this up and working through it only to discover it does not work on account of this issue.
I had a lot of issues to renew my certificates with this tool since ~1 month. 80% of my renewal requests was aborted.
After multiple tests, here are my results :
- POST-as-GET directive was delayed for the production environment, it's not the main issue : https://community.letsencrypt.org/t/acme-v2-scheduled-deprecation-of-unauthenticated-resource-gets/74380/5
- The current LUA script in master branch is working in ACMEv2 production environment
- Let's Encrypt infrastructure has a lot of issues, yesterday 1/3 of my requests were 503 errors
- These 503 errors are breaking the request chain in LUA script, aborting a lot of certificates
- I had an issue with my chained cert
letsencrypt-x3-ca-chain.pemwhich was too old (it was using Let’s Encrypt Authority X3 intermediate cert which is retired)
I send a pull request today with :
- A retry mecanism to increase reliability (5 retries per request)
- Compliance with POST-as-GET directive
Using an identical HA Proxy configuration and curl command to the README, I can't seem to get an order to go through and either fail or succeed. Seems to fail almost immediately with a 500 error. Would appreciate some guidance—I'm fairly new to HA Proxy so I may be missing something relatively simple.
haproxy.cfg:
CURL:
HA Proxy Version:
Curl Failure:
HA Proxy Debug Output: