1. The problem I’m having:
I’m trying to test the new IP certificate from my local machine. As I’m behind CGNAT I need to use an IPv6 address for that. The provided Caddyfile works for an IPv4 address (tested on a VPS not the same machine) but I can’t get it to work with an IPv6 address.
Port forwarding is configured for port 80 and 443 and seems to be working:
curl -6vL http://[2a01:66a0:803:4400:c5dc:d38a:66eb:9c82]/
* Trying 2a01:66a0:803:4400:c5dc:d38a:66eb:9c82:80...
* Connected to 2a01:66a0:803:4400:c5dc:d38a:66eb:9c82 (2a01:66a0:803:4400:c5dc:d38a:66eb:9c82) port 80 (#0)
> GET / HTTP/1.1
> Host: [2a01:66a0:803:4400:c5dc:d38a:66eb:9c82]
> User-Agent: curl/7.81.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Content-Type: text/plain; charset=utf-8
< Server: Caddy
< Date: Thu, 09 Oct 2025 12:13:00 GMT
< Content-Length: 11
<
* Connection #0 to host 2a01:66a0:803:4400:c5dc:d38a:66eb:9c82 left intact
Hello World
2. Error messages and/or full log output:
2025/10/09 12:04:00.855 INFO maxprocs: Leaving GOMAXPROCS=8: CPU quota undefined
2025/10/09 12:04:00.855 INFO GOMEMLIMIT is updated {"GOMEMLIMIT": 60992037273, "previous": 9223372036854775807}
2025/10/09 12:04:00.855 INFO using adjacent Caddyfile
2025/10/09 12:04:00.855 INFO adapted config to JSON {"adapter": "caddyfile"}
2025/10/09 12:04:00.855 WARN Caddyfile input is not formatted; run 'caddy fmt --overwrite' to fix inconsistencies {"adapter": "caddyfile", "file": "Caddyfile", "line": 2}
2025/10/09 12:04:00.862 INFO admin admin endpoint started {"address": "localhost:2019", "enforce_origin": false, "origins": ["//[::1]:2019", "//127.0.0.1:2019", "//localhost:2019"]}
2025/10/09 12:04:00.862 INFO tls.cache.maintenance started background certificate maintenance {"cache": "0xc00017b980"}
2025/10/09 12:04:00.862 INFO http.auto_https server is listening only on the HTTPS port but has no TLS connection policies; adding one to enable TLS {"server_name": "srv0", "https_port": 443}
2025/10/09 12:04:00.862 INFO http.auto_https enabling automatic HTTP->HTTPS redirects {"server_name": "srv0"}
2025/10/09 12:04:00.862 DEBUG http.auto_https adjusted config {"tls": {"automation":{"policies":[{"subjects":["2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"]},{}]}}, "http": {"servers":{"remaining_auto_https_redirects":{"listen":[":80"],"routes":[{},{}]},"srv0":{"listen":[":443"],"routes":[{"terminal":true}],"tls_connection_policies":[{}],"automatic_https":{}}}}}
2025/10/09 12:04:00.862 DEBUG http starting server loop {"address": "[::]:80", "tls": false, "http3": false}
2025/10/09 12:04:00.862 WARN http HTTP/2 skipped because it requires TLS {"network": "tcp", "addr": ":80"}
2025/10/09 12:04:00.862 WARN http HTTP/3 skipped because it requires TLS {"network": "tcp", "addr": ":80"}
2025/10/09 12:04:00.862 INFO http.log server running {"name": "remaining_auto_https_redirects", "protocols": ["h1", "h2", "h3"]}
2025/10/09 12:04:00.862 DEBUG http starting server loop {"address": "[::]:443", "tls": true, "http3": false}
2025/10/09 12:04:00.863 INFO http enabling HTTP/3 listener {"addr": ":443"}
2025/10/09 12:04:00.863 INFO http.log server running {"name": "srv0", "protocols": ["h1", "h2", "h3"]}
2025/10/09 12:04:00.863 INFO http enabling automatic TLS certificate management {"domains": ["2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"]}
2025/10/09 12:04:00.863 DEBUG events event {"name": "started", "id": "4544b0ba-b973-4db8-9b76-e7830442ce52", "origin": "", "data": null}
2025/10/09 12:04:00.863 INFO autosaved config (load with --resume flag) {"file": "C:\\Users\\LukiAdmin\\AppData\\Roaming\\Caddy\\autosave.json"}
2025/10/09 12:04:00.863 INFO serving initial configuration
2025/10/09 12:04:00.865 INFO tls storage cleaning happened too recently; skipping for now {"storage": "FileStorage:C:\\Users\\LukiAdmin\\AppData\\Roaming\\Caddy", "instance": "e2465ae7-47a5-4b62-8c41-72388f697e72", "try_again": "2025/10/10 12:04:00.865", "try_again_in": 86400}
2025/10/09 12:04:00.866 INFO tls finished cleaning storage units
2025/10/09 12:04:00.870 INFO tls.obtain acquiring lock {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"}
2025/10/09 12:04:00.871 INFO tls.obtain lock acquired {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"}
2025/10/09 12:04:00.871 INFO tls.obtain obtaining certificate {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"}
2025/10/09 12:04:00.871 DEBUG events event {"name": "cert_obtaining", "id": "884e86fa-9501-4055-8e4f-09f7511010c3", "origin": "tls", "data": {"identifier":"2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"}}
2025/10/09 12:04:00.871 DEBUG tls created CSR {"identifiers": ["2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"], "san_dns_names": [], "san_emails": [], "common_name": "", "extra_extensions": 0}
2025/10/09 12:04:00.872 DEBUG tls.obtain trying issuer 1/1 {"issuer": "acme-staging-v02.api.letsencrypt.org-directory"}
2025/10/09 12:04:00.872 DEBUG tls.issuance.acme using existing ACME account because key found in storage associated with email {"email": "default", "ca": "https://acme-staging-v02.api.letsencrypt.org/directory"}
2025/10/09 12:04:00.872 DEBUG tls.issuance.acme using existing ACME account because key found in storage associated with email {"email": "", "ca": "https://acme-staging-v02.api.letsencrypt.org/directory"}
2025/10/09 12:04:00.872 INFO tls.issuance.acme waiting on internal rate limiter {"identifiers": ["2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"], "ca": "https://acme-staging-v02.api.letsencrypt.org/directory", "account": ""}
2025/10/09 12:04:00.872 INFO tls.issuance.acme done waiting on internal rate limiter {"identifiers": ["2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"], "ca": "https://acme-staging-v02.api.letsencrypt.org/directory", "account": ""}
2025/10/09 12:04:00.873 INFO tls.issuance.acme using ACME account {"account_id": "https://acme-staging-v02.api.letsencrypt.org/acme/acct/233115413", "account_contact": []}
2025/10/09 12:04:01.347 DEBUG http request {"method": "GET", "url": "https://acme-staging-v02.api.letsencrypt.org/directory", "headers": {"User-Agent":["Caddy/178294e9-20251006 CertMagic acmez (windows; amd64)"]}, "response_headers": {"Cache-Control":["public, max-age=0, no-cache"],"Content-Length":["1139"],"Content-Type":["application/json"],"Date":["Thu, 09 Oct 2025 12:04:02 GMT"],"Server":["nginx"],"Strict-Transport-Security":["max-age=604800"],"X-Frame-Options":["DENY"]}, "status_code": 200}
2025/10/09 12:04:01.347 DEBUG creating order {"account": "https://acme-staging-v02.api.letsencrypt.org/acme/acct/233115413", "identifiers": ["2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"]}
2025/10/09 12:04:01.486 DEBUG http request {"method": "HEAD", "url": "https://acme-staging-v02.api.letsencrypt.org/acme/new-nonce", "headers": {"User-Agent":["Caddy/178294e9-20251006 CertMagic acmez (windows; amd64)"]}, "response_headers": {"Cache-Control":["public, max-age=0, no-cache"],"Date":["Thu, 09 Oct 2025 12:04:02 GMT"],"Link":["<https://acme-staging-v02.api.letsencrypt.org/directory>;rel=\"index\""],"Replay-Nonce":["HyrO2IUq8tRuqwPjJeiqeeBfHM9qs3dJ1dgITf_zzbgMgnYrq_E"],"Server":["nginx"],"Strict-Transport-Security":["max-age=604800"],"X-Frame-Options":["DENY"]}, "status_code": 200}
2025/10/09 12:04:01.645 DEBUG http request {"method": "POST", "url": "https://acme-staging-v02.api.letsencrypt.org/acme/new-order", "headers": {"Content-Type":["application/jose+json"],"User-Agent":["Caddy/178294e9-20251006 CertMagic acmez (windows; amd64)"]}, "response_headers": {"Boulder-Requester":["233115413"],"Cache-Control":["public, max-age=0, no-cache"],"Content-Length":["410"],"Content-Type":["application/json"],"Date":["Thu, 09 Oct 2025 12:04:02 GMT"],"Link":["<https://acme-staging-v02.api.letsencrypt.org/directory>;rel=\"index\""],"Location":["https://acme-staging-v02.api.letsencrypt.org/acme/order/233115413/27765821833"],"Replay-Nonce":["iTObXkhz-BQ7_zo6Wb6sw1KbslTINvrkNpxxpYObbKsS59kyIdM"],"Server":["nginx"],"Strict-Transport-Security":["max-age=604800"],"X-Frame-Options":["DENY"]}, "status_code": 201}
2025/10/09 12:04:01.791 DEBUG http request {"method": "POST", "url": "https://acme-staging-v02.api.letsencrypt.org/acme/authz/233115413/19659623573", "headers": {"Content-Type":["application/jose+json"],"User-Agent":["Caddy/178294e9-20251006 CertMagic acmez (windows; amd64)"]}, "response_headers": {"Boulder-Requester":["233115413"],"Cache-Control":["public, max-age=0, no-cache"],"Content-Length":["637"],"Content-Type":["application/json"],"Date":["Thu, 09 Oct 2025 12:04:03 GMT"],"Link":["<https://acme-staging-v02.api.letsencrypt.org/directory>;rel=\"index\""],"Replay-Nonce":["HyrO2IUqxukVisFDodviABNI1R1zvTbCUNC7PddG03-VXnxCOio"],"Server":["nginx"],"Strict-Transport-Security":["max-age=604800"],"X-Frame-Options":["DENY"]}, "status_code": 200}
2025/10/09 12:04:01.791 DEBUG no solver configured {"challenge_type": "tls-alpn-01"}
2025/10/09 12:04:01.791 INFO trying to solve challenge {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82", "challenge_type": "http-01", "ca": "https://acme-staging-v02.api.letsencrypt.org/directory"}
2025/10/09 12:04:01.794 DEBUG waiting for solver before continuing {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82", "challenge_type": "http-01"}
2025/10/09 12:04:01.794 DEBUG done waiting for solver {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82", "challenge_type": "http-01"}
2025/10/09 12:04:01.941 DEBUG http request {"method": "POST", "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall/233115413/19659623573/mzQLvg", "headers": {"Content-Type":["application/jose+json"],"User-Agent":["Caddy/178294e9-20251006 CertMagic acmez (windows; amd64)"]}, "response_headers": {"Boulder-Requester":["233115413"],"Cache-Control":["public, max-age=0, no-cache"],"Content-Length":["201"],"Content-Type":["application/json"],"Date":["Thu, 09 Oct 2025 12:04:03 GMT"],"Link":["<https://acme-staging-v02.api.letsencrypt.org/directory>;rel=\"index\"","<https://acme-staging-v02.api.letsencrypt.org/acme/authz/233115413/19659623573>;rel=\"up\""],"Location":["https://acme-staging-v02.api.letsencrypt.org/acme/chall/233115413/19659623573/mzQLvg"],"Replay-Nonce":["iTObXkhz8tXXgntcieSZHb-Hxsuux_pG1KH2evc8zFydKNzqv74"],"Server":["nginx"],"Strict-Transport-Security":["max-age=604800"],"X-Frame-Options":["DENY"]}, "status_code": 200}
2025/10/09 12:04:01.941 DEBUG challenge accepted {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82", "challenge_type": "http-01"}
2025/10/09 12:04:02.105 WARN http looking up info for HTTP challenge {"uri": "/.well-known/acme-challenge/KrO5epj81nPhlWJQd2xSSVVYllNGj4lBfyPGvy_EMwg", "identifier": "[2a01:66a0:803:4400:c5dc:d38a:66eb:9c82]", "remote_addr": "[2600:3000:2710:300::82]:62249", "user_agent": "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)", "error": "no information found to solve challenge for identifier: [2a01:66a0:803:4400:c5dc:d38a:66eb:9c82]"}
2025/10/09 12:04:02.337 DEBUG http request {"method": "POST", "url": "https://acme-staging-v02.api.letsencrypt.org/acme/authz/233115413/19659623573", "headers": {"Content-Type":["application/jose+json"],"User-Agent":["Caddy/178294e9-20251006 CertMagic acmez (windows; amd64)"]}, "response_headers": {"Boulder-Requester":["233115413"],"Cache-Control":["public, max-age=0, no-cache"],"Content-Length":["637"],"Content-Type":["application/json"],"Date":["Thu, 09 Oct 2025 12:04:03 GMT"],"Link":["<https://acme-staging-v02.api.letsencrypt.org/directory>;rel=\"index\""],"Replay-Nonce":["HyrO2IUqBGf7QQShC9LW8Yw4563Vc-tgn8mgMukjXHjyTjua2Uk"],"Server":["nginx"],"Strict-Transport-Security":["max-age=604800"],"X-Frame-Options":["DENY"]}, "status_code": 200}
2025/10/09 12:04:02.404 DEBUG events event {"name": "tls_get_certificate", "id": "fa268137-840a-4008-a11a-1cc93b40bb8f", "origin": "tls", "data": {"client_hello":{"CipherSuites":[49195,49199,49196,49200,52393,52392,49161,49171,49162,49172,4865,4866,4867],"ServerName":"","SupportedCurves":[4588,29,23,24,25],"SupportedPoints":"AA==","SignatureSchemes":[2052,1027,2055,2053,2054,1025,1281,1537,1283,1539],"SupportedProtos":null,"SupportedVersions":[772,771],"RemoteAddr":{"IP":"2600:3000:2710:300::82","Port":62435,"Zone":""},"LocalAddr":{"IP":"2a01:66a0:803:4400:c5dc:d38a:66eb:9c82","Port":443,"Zone":""}}}}
2025/10/09 12:04:02.406 DEBUG tls.handshake no matching certificates and no custom selection logic {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"}
2025/10/09 12:04:02.406 DEBUG tls.handshake no certificate matching TLS ClientHello {"remote_ip": "2600:3000:2710:300::82", "remote_port": "62435", "server_name": "", "remote": "[2600:3000:2710:300::82]:62435", "identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82", "cipher_suites": [49195, 49199, 49196, 49200, 52393, 52392, 49161, 49171, 49162, 49172, 4865, 4866, 4867], "cert_cache_fill": 0, "load_or_obtain_if_necessary": true, "on_demand": false}
2025/10/09 12:04:02.406 DEBUG http.stdlib http: TLS handshake error from [2600:3000:2710:300::82]:62435: no certificate available for '2a01:66a0:803:4400:c5dc:d38a:66eb:9c82'
2025/10/09 12:04:02.733 DEBUG http request {"method": "POST", "url": "https://acme-staging-v02.api.letsencrypt.org/acme/authz/233115413/19659623573", "headers": {"Content-Type":["application/jose+json"],"User-Agent":["Caddy/178294e9-20251006 CertMagic acmez (windows; amd64)"]}, "response_headers": {"Boulder-Requester":["233115413"],"Cache-Control":["public, max-age=0, no-cache"],"Content-Length":["1636"],"Content-Type":["application/json"],"Date":["Thu, 09 Oct 2025 12:04:03 GMT"],"Link":["<https://acme-staging-v02.api.letsencrypt.org/directory>;rel=\"index\""],"Replay-Nonce":["iTObXkhzwsIHuV2qjrFEoGobHsrAZ5umD8SWrcO4dRT8jBcGlbA"],"Server":["nginx"],"Strict-Transport-Security":["max-age=604800"],"X-Frame-Options":["DENY"]}, "status_code": 200}
2025/10/09 12:04:02.734 ERROR challenge failed {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82", "challenge_type": "http-01", "problem": {"type": "urn:ietf:params:acme:error:tls", "title": "", "detail": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82: Fetching https://[2a01:66a0:803:4400:c5dc:d38a:66eb:9c82]/.well-known/acme-challenge/KrO5epj81nPhlWJQd2xSSVVYllNGj4lBfyPGvy_EMwg: remote error: tls: internal error", "instance": "", "subproblems": null}}
github.com/mholt/acmez/v3.(*Client).pollAuthorization
C:/Users/LukiAdmin/go/pkg/mod/github.com/mholt/acmez/v3@v3.1.3/client.go:557
github.com/mholt/acmez/v3.(*Client).solveChallenges
C:/Users/LukiAdmin/go/pkg/mod/github.com/mholt/acmez/v3@v3.1.3/client.go:378
github.com/mholt/acmez/v3.(*Client).ObtainCertificate
C:/Users/LukiAdmin/go/pkg/mod/github.com/mholt/acmez/v3@v3.1.3/client.go:136
github.com/caddyserver/certmagic.(*ACMEIssuer).doIssue
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/acmeissuer.go:498
github.com/caddyserver/certmagic.(*ACMEIssuer).Issue
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/acmeissuer.go:391
github.com/caddyserver/caddy/v2/modules/caddytls.(*ACMEIssuer).Issue
E:/caddy/modules/caddytls/acmeissuer.go:291
github.com/caddyserver/certmagic.(*Config).obtainCert.func2
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/config.go:662
github.com/caddyserver/certmagic.doWithRetry
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/async.go:104
github.com/caddyserver/certmagic.(*Config).obtainCert
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/config.go:736
github.com/caddyserver/certmagic.(*Config).ObtainCertAsync
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/config.go:532
github.com/caddyserver/certmagic.(*Config).manageOne.func1
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/config.go:415
github.com/caddyserver/certmagic.(*jobManager).worker
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/async.go:73
2025/10/09 12:04:02.734 ERROR validating authorization {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82", "problem": {"type": "urn:ietf:params:acme:error:tls", "title": "", "detail": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82: Fetching https://[2a01:66a0:803:4400:c5dc:d38a:66eb:9c82]/.well-known/acme-challenge/KrO5epj81nPhlWJQd2xSSVVYllNGj4lBfyPGvy_EMwg: remote error: tls: internal error", "instance": "", "subproblems": null}, "order": "https://acme-staging-v02.api.letsencrypt.org/acme/order/233115413/27765821833", "attempt": 1, "max_attempts": 3}
github.com/mholt/acmez/v3.(*Client).ObtainCertificate
C:/Users/LukiAdmin/go/pkg/mod/github.com/mholt/acmez/v3@v3.1.3/client.go:152
github.com/caddyserver/certmagic.(*ACMEIssuer).doIssue
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/acmeissuer.go:498
github.com/caddyserver/certmagic.(*ACMEIssuer).Issue
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/acmeissuer.go:391
github.com/caddyserver/caddy/v2/modules/caddytls.(*ACMEIssuer).Issue
E:/caddy/modules/caddytls/acmeissuer.go:291
github.com/caddyserver/certmagic.(*Config).obtainCert.func2
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/config.go:662
github.com/caddyserver/certmagic.doWithRetry
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/async.go:104
github.com/caddyserver/certmagic.(*Config).obtainCert
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/config.go:736
github.com/caddyserver/certmagic.(*Config).ObtainCertAsync
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/config.go:532
github.com/caddyserver/certmagic.(*Config).manageOne.func1
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/config.go:415
github.com/caddyserver/certmagic.(*jobManager).worker
C:/Users/LukiAdmin/go/pkg/mod/github.com/caddyserver/certmagic@v0.25.0/async.go:73
2025/10/09 12:04:02.734 ERROR tls.obtain could not get certificate from issuer {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82", "issuer": "acme-staging-v02.api.letsencrypt.org-directory", "error": "HTTP 400 urn:ietf:params:acme:error:tls - 2a01:66a0:803:4400:c5dc:d38a:66eb:9c82: Fetching https://[2a01:66a0:803:4400:c5dc:d38a:66eb:9c82]/.well-known/acme-challenge/KrO5epj81nPhlWJQd2xSSVVYllNGj4lBfyPGvy_EMwg: remote error: tls: internal error"}
2025/10/09 12:04:02.734 DEBUG events event {"name": "cert_failed", "id": "19d2f0a0-2e82-438c-85ae-a8e3f47d162f", "origin": "tls", "data": {"error":{},"identifier":"2a01:66a0:803:4400:c5dc:d38a:66eb:9c82","issuers":["acme-staging-v02.api.letsencrypt.org-directory"],"renewal":false}}
2025/10/09 12:04:02.734 ERROR tls.obtain will retry {"error": "[2a01:66a0:803:4400:c5dc:d38a:66eb:9c82] Obtain: [2a01:66a0:803:4400:c5dc:d38a:66eb:9c82] solving challenge: 2a01:66a0:803:4400:c5dc:d38a:66eb:9c82: [2a01:66a0:803:4400:c5dc:d38a:66eb:9c82] authorization failed: HTTP 400 urn:ietf:params:acme:error:tls - 2a01:66a0:803:4400:c5dc:d38a:66eb:9c82: Fetching https://[2a01:66a0:803:4400:c5dc:d38a:66eb:9c82]/.well-known/acme-challenge/KrO5epj81nPhlWJQd2xSSVVYllNGj4lBfyPGvy_EMwg: remote error: tls: internal error (ca=https://acme-staging-v02.api.letsencrypt.org/directory)", "attempt": 1, "retrying_in": 60, "elapsed": 1.8624977, "max_duration": 2592000}
2025/10/09 12:04:06.698 INFO shutting down {"signal": "SIGINT"}
2025/10/09 12:04:06.698 WARN exiting; byeee!! 👋 {"signal": "SIGINT"}
2025/10/09 12:04:06.698 DEBUG events event {"name": "stopping", "id": "9cbee8db-ada0-4d98-9fb3-d1843501e217", "origin": "", "data": null}
2025/10/09 12:04:06.698 INFO http servers shutting down with eternal grace period
2025/10/09 12:04:06.698 INFO tls.obtain releasing lock {"identifier": "2a01:66a0:803:4400:c5dc:d38a:66eb:9c82"}
2025/10/09 12:04:06.699 INFO admin stopped previous server {"address": "localhost:2019"}
2025/10/09 12:04:06.699 INFO shutdown complete {"signal": "SIGINT", "exit_code": 0}
3. Caddy version:
178294e9d70fede4244c3c57313925e0f9a17b4c (06 Oct 25 23:43 UTC)
4. How I installed and ran Caddy:
Built from source.
a. System environment:
Windows 11 24H2 (Build 26100.6584)
go version go1.24.1 windows/amd64
b. Command:
caddy run
c. Service/unit/compose file:
N/A
d. My complete Caddy config:
{
debug
}
2a01:66a0:803:4400:c5dc:d38a:66eb:9c82 {
tls {
issuer acme {
dir https://acme-staging-v02.api.letsencrypt.org/directory
profile shortlived
disable_tlsalpn_challenge
}
}
}