2026-01-12 16:44:31 +01:00
2026-01-12 16:44:31 +01:00
2026-01-12 16:44:31 +01:00
2026-01-12 16:44:31 +01:00
2026-01-12 16:44:31 +01:00
2026-01-12 16:44:31 +01:00
2026-01-12 16:44:31 +01:00
2026-01-12 16:44:31 +01:00

tiny-dns

A simple DNS server that can be used to answer ACME DNS-01 or DynDNS queries.

  • POST /update : Creates a new or updates an existing DNS entry.
  • POST /delete : Deletes an DNS entry.
  • GET /status : Returns the status of the server.
  • GET /dyndns/domain.example.com. : Alternate way of updating DNS entries for DynDNS.

Authorization via x-api-user & x-api-key header-fields.

Update URL

curl http://\[::1\]:3000/update -H "X-Api-User: <user>" -H "X-Api-Key: <super-secret>" \
--json '{"subdomain": "_acme-challenge.example.com", "rdata": "___validation_token_received_from_the_ca___"}'

Test URL

dig @localhost -p 3053 -t TXT _acme-challenge.example.com

DNS Config


example.com.                      IN A        192.0.2.1
www.example.com.                  IN CNAME    example.com.
acme-dns.example.com.             IN A        192.0.2.2

_acme-challenge.example.com.      IN NS       acme-dns.example.com.
_acme-challenge.www.example.com.  IN NS       acme-dns.example.com.

Prior art

  • agnos - Uses the DNS-NS entries, but no webapi
  • acme-dns - Provides a webapi for managing DNS entries.
Description
No description provided
Readme 83 KiB
Languages
Rust 100%