Skip to content
This repository was archived by the owner on Sep 2, 2021. It is now read-only.
This repository was archived by the owner on Sep 2, 2021. It is now read-only.

Spamming auth attempts gets you locked out of LetsEncrypt API #44

@Ramblurr

Description

@Ramblurr

For some reason cert creation is failing, and the tool ends up in a loop where it spams authorization attempts and quickly gets locked out due to the rate limit:

We recently (April 2017) introduced a Failed Validation limit of 5 failures per account, per hostname, per hour. source

I see this in the log file repeated hundreds of times:

INFO[0517] [acmetool want $(echo "sub1.mydomain.example" | tr , " ")]: "20170720143655 [CRITICAL] acmetool: fatal: reconcile: the following errors occurred:"
INFO[0517] [acmetool want $(echo "sub1.mydomain.example" | tr , " ")]: "error satisfying Target(sub2.mydomain.example;https://acme-v01.api.letsencrypt.org/directory;0): HTTP error: 429 Too Many Requests"
INFO[0517] [acmetool want $(echo "sub1.mydomain.example" | tr , " ")]: "map[Replay-Nonce:[UoktS6H4aoW-tHxtQIjLjfwC3rdTVUMW239LI6NASI8] Pragma:[no-cache] Date:[Thu, 20 Jul 2017 14:36:55 GMT] Content-Type:[application/problem+json] Content-Length:[144] Boulder-Requester:[18899316] Expires:[Thu, 20 Jul 2017 14:36:55 GMT] Cache-Control:[max-age=0, no-cache, no-store] Server:[nginx] Boulder-Request-Id:[rtPgqMbmtVa4FYHzmPywYtDjYl6K6vkg3tD2ruDTDIA]]"
INFO[0517] [acmetool want $(echo "sub1.mydomain.example" | tr , " ")]: "{"
INFO[0517] [acmetool want $(echo "sub1.mydomain.example" | tr , " ")]: "  \"type\": \"urn:acme:error:rateLimited\","
INFO[0517] [acmetool want $(echo "sub1.mydomain.example" | tr , " ")]: "  \"detail\": \"Error creating new authz :: Too many invalid authorizations recently.\","
INFO[0517] [acmetool want $(echo "sub1.mydomain.example" | tr , " ")]: "  \"status\": 429"
INFO[0517] [acmetool want $(echo "sub1.mydomain.example" | tr , " ")]: "}"

Why exactly it is failing, I'm not sure. What's interesting is that it seems to confuse sub1.mydomain.example and sub2.mydomain.example.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions