Sovite.TLS.ACME.HTTPChallenge (sovite v0.2.0)

Copy Markdown View Source

Answers ACME HTTP-01 challenges (RFC 8555 §8.3): a Sovite.Listener handler that serves GET /.well-known/acme-challenge/<token> from an ETS table of {token, key_authorization} and answers everything else with 404.

table = :ets.new(:challenges, [:public])
{Sovite.Listener, port: 80, handler: Sovite.TLS.ACME.HTTPChallenge, handler_opts: [table: table]}

Requests larger than 8 KiB, or slower than 10 seconds, are dropped.