acmesh-official / acmesh-official/acme.sh

Alle zones are retrieved -very efficient-

Aperta Adatta ai principianti
#6,382 4 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Shell
Stelle
47.6k
Fork
5.7k
Merge medio
6g 5h
PR unite (30g)
15

Descrizione

We have about ~100.000 domain names / zones in powerdns and right now im testing the pdns plugin for acme.

I tested with 2 domains and it takes a long time: 6-7 minutes. In the logs i see this:

[Sun Jun 1 05:08:38 PM CEST 2025] Found domain API file: /root/.acme.sh/dnsapi/dns_pdns.sh
[Sun Jun 1 05:08:38 PM CEST 2025] Adding TXT value: 6_9PeUhNlK7zau-aaaa for domain: _acme-challenge.somedomain.nl
[Sun Jun 1 05:08:38 PM CEST 2025] Detect root zone
[Sun Jun 1 05:08:38 PM CEST 2025] GET
[Sun Jun 1 05:08:38 PM CEST 2025] url='http://pdns-myserver.someurl.nl:8081/api/v1/servers/localhost/zones'
[Sun Jun 1 05:08:38 PM CEST 2025] timeout=
[Sun Jun 1 05:08:38 PM CEST 2025] Http already initialized.
[Sun Jun 1 05:08:38 PM CEST 2025] _CURL='curl --silent --dump-header /root/.acme.sh/http.header -L -g '

The part "/api/v1/servers/localhost/zones" worries me because it gets alle the zones from our server which are about ~300.000 domain names. Can i modify the script so it only gets the zone its needs?

Many thanks!

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Check `dnsapi/dns_pdns.sh` (path shown in the log) in the zone-detection path that issues `GET /api/v1/servers/localhost/zones`. Trace how the root zone is derived from the challenge domain and whether the API flow can request only that zone. Run the dns_pdns TXT add flow against a large PowerDNS dataset and confirm the change still succeeds while avoiding a full zone-list fetch in logs.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
shell
Ambito
tooling
Tipo di issue
Bug
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
64/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.