I'm using Let's Encrypt for my site, and I had an error in my cron job that resulted in an error when I attempted to manually renew ($ sudo letsencrypt renew
):
Error: urn:acme:error:rateLimited :: There were too many requests of a given type :: Error creating new authz :: Too many currently pending authorizations.
My certificate has already expired so I can't wait the 7 days for it to clear.
The Let's Encrypt site indicates I can clear one of the pending requests:
If you have a large number of pending authorization objects and are getting a rate limiting error, you can trigger a validation attempt for those authorization objects by submitting a JWS-signed POST to one of its challenges, as described in the ACME spec.
I have the logs with the URLs, but I don't understand how to manually send a "JWS-signed POST".
Here's an example of today's that was rejected, from the log:
2017-03-31 06:40:32,180:DEBUG:root:Sending POST request to https://acme-v01.api.letsencrypt.org/acme/new-authz.
args: (), kwargs: {
'data': '{
"header": {
"alg": "RS256",
"jwk": {"e": "AQAB", "kty": "RSA", "n": "srgrg....huXi0sQ"}
},
"protected": "rsgrgs....ZJIn0",
"payload": "srgrg....In0",
"signature": "sgggserg....Tc-Q"
}'
}
How can I do this?