From 3a2c494d640f09cb49297a857d70c51837dc954f Mon Sep 17 00:00:00 2001 From: cnbugs <717192502@qq.com> Date: Fri, 24 Jul 2026 19:07:39 +0800 Subject: [PATCH] fix: increase DNS-01 timeout and add DNSTimeout option - Add dns01.AddDNSTimeout(15s) for more reliable DNS propagation check - Improve error resilience for Cloudflare DNS-01 challenges --- backend/services/acme.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/backend/services/acme.go b/backend/services/acme.go index 18ffa15..82ff489 100644 --- a/backend/services/acme.go +++ b/backend/services/acme.go @@ -81,8 +81,11 @@ func GetACMECertificate(cert *config.Certificate, cfg *config.Config) error { if err != nil { return fmt.Errorf("failed to create DNS provider: %v", err) } + + // Use custom DNS timeout for better reliability if err := client.Challenge.SetDNS01Provider(provider, dns01.AddRecursiveNameservers(dns01.ParseNameservers([]string{"8.8.8.8:53", "1.1.1.1:53"})), + dns01.AddDNSTimeout(15*time.Second), ); err != nil { return fmt.Errorf("failed to set DNS-01 provider: %v", err) } @@ -149,8 +152,11 @@ func RenewCertificate(cert *config.Certificate, cfg *config.Config) error { if err != nil { return fmt.Errorf("failed to create DNS provider: %v", err) } + + // Use custom DNS timeout for better reliability if err := client.Challenge.SetDNS01Provider(provider, dns01.AddRecursiveNameservers(dns01.ParseNameservers([]string{"8.8.8.8:53", "1.1.1.1:53"})), + dns01.AddDNSTimeout(15*time.Second), ); err != nil { return fmt.Errorf("failed to set DNS-01 provider: %v", err) }