New deployment: During secondary validation: Unable to contact <host> -> https certificate not yet loaded but checking https

1. The problem I’m having:

New deployment, same as previous recipes, but now there seems to be a secondary check that fails from LetsEncrypt (TLS-APN related?) and ZeroSSL not usable (they don’t support IPv6 only hosts…)

2. Error messages and/or full log output:

{“level”:“info”,“ts”:1769521703.414023,“msg”:“maxprocs: Leaving GOMAXPROCS=1: CPU quota undefined”}
{“level”:“info”,“ts”:1769521703.414215,“msg”:“GOMEMLIMIT is updated”,“package”:“github.com/KimMachineGun/automemlimit/memlimit",“GOMEMLIMIT”:121532486860,"previous”:9223372036854775807}
caddy.HomeDir=/root
caddy.AppDataDir=/etc/caddy/ssl/caddy
caddy.AppConfigDir=/root/.config/caddy
caddy.ConfigAutosavePath=/root/.config/caddy/autosave.json
caddy.Version=v2.10.2 h1:g/gTYjGMD0dec+UgMw8SnfmJ3I9+M2TdvoRL/Ovu6U8=
runtime.GOOS=linux
runtime.GOARCH=amd64
runtime.Compiler=gc
runtime.NumCPU=1
runtime.GOMAXPROCS=1
runtime.Version=go1.25.0
os.Getwd=/etc/caddy
SHELL=/bin/bash
SUDO_GID=1001
SUDO_COMMAND=/bin/bash
SUDO_USER=hvisage
PWD=/etc/caddy
LOGNAME=root
HOME=/root
LANG=C
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=00:tw=30;42:ow=34;42:st=37;44:ex=01;32:.tar=01;31:.tgz=01;31:.arc=01;31:.arj=01;31:.taz=01;31:.lha=01;31:.lz4=01;31:.lzh=01;31:.lzma=01;31:.tlz=01;31:.txz=01;31:.tzo=01;31:.t7z=01;31:.zip=01;31:.z=01;31:.dz=01;31:.gz=01;31:.lrz=01;31:.lz=01;31:.lzo=01;31:.xz=01;31:.zst=01;31:.tzst=01;31:.bz2=01;31:.bz=01;31:.tbz=01;31:.tbz2=01;31:.tz=01;31:.deb=01;31:.rpm=01;31:.jar=01;31:.war=01;31:.ear=01;31:.sar=01;31:.rar=01;31:.alz=01;31:.ace=01;31:.zoo=01;31:.cpio=01;31:.7z=01;31:.rz=01;31:.cab=01;31:.wim=01;31:.swm=01;31:.dwm=01;31:.esd=01;31:.avif=01;35:.jpg=01;35:.jpeg=01;35:.mjpg=01;35:.mjpeg=01;35:.gif=01;35:.bmp=01;35:.pbm=01;35:.pgm=01;35:.ppm=01;35:.tga=01;35:.xbm=01;35:.xpm=01;35:.tif=01;35:.tiff=01;35:.png=01;35:.svg=01;35:.svgz=01;35:.mng=01;35:.pcx=01;35:.mov=01;35:.mpg=01;35:.mpeg=01;35:.m2v=01;35:.mkv=01;35:.webm=01;35:.webp=01;35:.ogm=01;35:.mp4=01;35:.m4v=01;35:.mp4v=01;35:.vob=01;35:.qt=01;35:.nuv=01;35:.wmv=01;35:.asf=01;35:.rm=01;35:.rmvb=01;35:.flc=01;35:.avi=01;35:.fli=01;35:.flv=01;35:.gl=01;35:.dl=01;35:.xcf=01;35:.xwd=01;35:.yuv=01;35:.cgm=01;35:.emf=01;35:.ogv=01;35:.ogx=01;35:.aac=00;36:.au=00;36:.flac=00;36:.m4a=00;36:.mid=00;36:.midi=00;36:.mka=00;36:.mp3=00;36:.mpc=00;36:.ogg=00;36:.ra=00;36:.wav=00;36:.oga=00;36:.opus=00;36:.spx=00;36:.xspf=00;36:~=00;90:#=00;90:.bak=00;90:.old=00;90:.orig=00;90:.part=00;90:.rej=00;90:.swp=00;90:.tmp=00;90:.dpkg-dist=00;90:.dpkg-old=00;90:.ucf-dist=00;90:.ucf-new=00;90:.ucf-old=00;90:.rpmnew=00;90:.rpmorig=00;90:.rpmsave=00;90:
TERM=xterm-256color
USER=root
SHLVL=1
PATH=/root/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
SUDO_UID=1001
MAIL=/var/mail/root
_=/usr/bin/caddy
OLDPWD=/etc/apt
XDG_DATA_HOME=/etc/caddy/ssl
{“level”:“info”,“ts”:1769521703.4143488,“msg”:“using config from file”,“file”:“/etc/caddy/Caddyfile”}
{“level”:“info”,“ts”:1769521703.415599,“msg”:“adapted config to JSON”,“adapter”:“caddyfile”}
{“level”:“warn”,“ts”:1769521703.4156117,“msg”:“Caddyfile input is not formatted; run ‘caddy fmt --overwrite’ to fix inconsistencies”,“adapter”:“caddyfile”,“file”:“/etc/caddy/Caddyfile”,“line”:2}
{“level”:“info”,“ts”:1769521703.4167397,“logger”:“admin”,“msg”:“admin endpoint started”,“address”:“localhost:2019”,“enforce_origin”:false,“origins”:[“//localhost:2019”,“//[::1]:2019”,“//127.0.0.1:2019”]}
{“level”:“info”,“ts”:1769521703.4169545,“logger”:“http.auto_https”,“msg”:“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}
{“level”:“info”,“ts”:1769521703.4169705,“logger”:“http.auto_https”,“msg”:“enabling automatic HTTP->HTTPS redirects”,“server_name”:“srv0”}
{“level”:“debug”,“ts”:1769521703.4170246,“logger”:“http.auto_https”,“msg”:“adjusted config”,“tls”:{“automation”:{“policies”:[{}]}},“http”:{“servers”:{“remaining_auto_https_redirects”:{“listen”:[“:80”],“routes”:[{},{}],“logs”:{“logger_names”:{“pega.gogga.net.za”:[“log0”]}}},“srv0”:{“listen”:[“:443”],“routes”:[{“handle”:[{“handler”:“subroute”,“routes”:[{“handle”:[{“handler”:“reverse_proxy”,“headers”:{“request”:{“set”:{“X-Real-Ip”:[“{http.request.remote.host}”]}}},“transport”:{“protocol”:“http”,“tls”:{“insecure_skip_verify”:true}},“upstreams”:[{“dial”:“127.0.0.1:5000”}]}]}]}],“terminal”:true}],“tls_connection_policies”:[{}],“automatic_https”:{},“logs”:{“logger_names”:{“pega.gogga.net.za”:[“log0”]}}}}}}
{“level”:“debug”,“ts”:1769521703.4177873,“logger”:“http”,“msg”:“starting server loop”,“address”:“[::]:80”,“tls”:false,“http3”:false}
{“level”:“warn”,“ts”:1769521703.4178061,“logger”:“http”,“msg”:“HTTP/2 skipped because it requires TLS”,“network”:“tcp”,“addr”:“:80”}
{“level”:“warn”,“ts”:1769521703.4178104,“logger”:“http”,“msg”:“HTTP/3 skipped because it requires TLS”,“network”:“tcp”,“addr”:“:80”}
{“level”:“info”,“ts”:1769521703.4178138,“logger”:“http.log”,“msg”:“server running”,“name”:“remaining_auto_https_redirects”,“protocols”:[“h1”,“h2”,“h3”]}
{“level”:“debug”,“ts”:1769521703.4178593,“logger”:“http”,“msg”:“starting server loop”,“address”:“[::]:443”,“tls”:true,“http3”:false}
{“level”:“info”,“ts”:1769521703.4178665,“logger”:“http”,“msg”:“enabling HTTP/3 listener”,“addr”:“:443”}
{“level”:“info”,“ts”:1769521703.4179294,“msg”:“failed to sufficiently increase receive buffer size (was: 208 kiB, wanted: 7168 kiB, got: 416 kiB). See UDP Buffer Sizes · quic-go/quic-go Wiki · GitHub for details.”}
{“level”:“info”,“ts”:1769521703.4180255,“logger”:“http.log”,“msg”:“server running”,“name”:“srv0”,“protocols”:[“h1”,“h2”,“h3”]}
{“level”:“info”,“ts”:1769521703.4180377,“logger”:“http”,“msg”:“enabling automatic TLS certificate management”,“domains”:[“pega.gogga.net.za”]}
{“level”:“debug”,“ts”:1769521703.4181123,“logger”:“events”,“msg”:“event”,“name”:“started”,“id”:“37bbe87c-65f3-4444-aeb6-82e64b45015e”,“origin”:“”,“data”:null}
{“level”:“info”,“ts”:1769521703.4182062,“msg”:“autosaved config (load with --resume flag)”,“file”:“/root/.config/caddy/autosave.json”}
{“level”:“info”,“ts”:1769521703.4182131,“msg”:“serving initial configuration”}
{“level”:“info”,“ts”:1769521703.421214,“logger”:“tls”,“msg”:“storage cleaning happened too recently; skipping for now”,“storage”:“FileStorage:/etc/caddy/ssl/caddy”,“instance”:“421c5c48-860a-4053-a0c9-31ca048feeab”,“try_again”:1769608103.421213,“try_again_in”:86399.999999634}
{“level”:“info”,“ts”:1769521703.4212832,“logger”:“tls”,“msg”:“finished cleaning storage units”}
{“level”:“info”,“ts”:1769521703.4227915,“logger”:“tls.cache.maintenance”,“msg”:“started background certificate maintenance”,“cache”:“0xc0000e0480”}
{“level”:“info”,“ts”:1769521703.4256244,“logger”:“tls.obtain”,“msg”:“acquiring lock”,“identifier”:“pega.gogga.net.za”}
{“level”:“info”,“ts”:1769521703.4280999,“logger”:“tls.obtain”,“msg”:“lock acquired”,“identifier”:“pega.gogga.net.za”}
{“level”:“info”,“ts”:1769521703.428169,“logger”:“tls.obtain”,“msg”:“obtaining certificate”,“identifier”:“pega.gogga.net.za”}
{“level”:“debug”,“ts”:1769521703.4281847,“logger”:“events”,“msg”:“event”,“name”:“cert_obtaining”,“id”:“77a82e3d-cbca-4393-9ea9-eb966ec97039”,“origin”:“tls”,“data”:{“identifier”:“pega.gogga.net.za”}}
{“level”:“debug”,“ts”:1769521703.4283428,“logger”:“tls”,“msg”:“created CSR”,“identifiers”:[“pega.gogga.net.za”],“san_dns_names”:[“pega.gogga.net.za”],“san_emails”:,“common_name”:“”,“extra_extensions”:0}
{“level”:“debug”,“ts”:1769521703.428669,“logger”:“tls.obtain”,“msg”:“trying issuer 1/1”,“issuer”:“acme-staging-v02.api.letsencrypt.org-directory”}
{“level”:“debug”,“ts”:1769521703.4288902,“logger”:“http”,“msg”:“using existing ACME account because key found in storage associated with email”,“email”:“sysadmin@hevis.co.za”,“ca”:“https://acme-staging-v02.api.letsencrypt.org/directory”}
{“level”:“info”,“ts”:1769521703.428914,“logger”:“http”,“msg”:“waiting on internal rate limiter”,“identifiers”:[“pega.gogga.net.za”],“ca”:“https://acme-staging-v02.api.letsencrypt.org/directory",“account”:"sysadmin@hevis.co.za”}
{“level”:“info”,“ts”:1769521703.4289207,“logger”:“http”,“msg”:“done waiting on internal rate limiter”,“identifiers”:[“pega.gogga.net.za”],“ca”:“https://acme-staging-v02.api.letsencrypt.org/directory",“account”:"sysadmin@hevis.co.za”}
{“level”:“info”,“ts”:1769521703.4289384,“logger”:“http”,“msg”:“using ACME account”,“account_id”:“https://acme-staging-v02.api.letsencrypt.org/acme/acct/261135053",“account_contact”:["mailto:sysadmin@hevis.co.za”]}
{“level”:“debug”,“ts”:1769521704.2712352,“msg”:“http request”,“method”:“GET”,“url”:“https://acme-staging-v02.api.letsencrypt.org/directory",“headers”:{“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“1107”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:24 GMT”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“debug”,“ts”:1769521704.2714326,“msg”:“creating order”,“account”:“https://acme-staging-v02.api.letsencrypt.org/acme/acct/261135053",“identifiers”:["pega.gogga.net.za”]}
{“level”:“debug”,“ts”:1769521704.5494366,“msg”:“http request”,“method”:“HEAD”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/new-nonce",“headers”:{“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Cache-Control”:[“public, max-age=0, no-cache”],“Date”:[“Tue, 27 Jan 2026 13:48:24 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“sXXzwma1BhOMsDLQcfG-e1r_XTA8HocUjqcY5LV7ttUNxMnjrTc”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“debug”,“ts”:1769521704.8391647,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/new-order",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“363”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:24 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Location”:[“https://acme-staging-v02.api.letsencrypt.org/acme/order/261135053/31102266723"],“Replay-Nonce”:[“NrRKSEyKg6yd5THOvJtf6F57GlgQw1RKRIbr6T9a8O1Wsc0v_Vk”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},"status_code”:201}
{“level”:“debug”,“ts”:1769521705.1196656,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385751433",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:24 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“NrRKSEyKzaFpz0og-NZgruOCYI7M0c-JLGYfifJy0cjeXzyOw3o”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“info”,“ts”:1769521705.11995,“msg”:“trying to solve challenge”,“identifier”:“pega.gogga.net.za”,“challenge_type”:“http-01”,“ca”:“https://acme-staging-v02.api.letsencrypt.org/directory”}
{“level”:“debug”,“ts”:1769521705.1233888,“msg”:“waiting for solver before continuing”,“identifier”:“pega.gogga.net.za”,“challenge_type”:“http-01”}
{“level”:“debug”,“ts”:1769521705.1234121,“msg”:“done waiting for solver”,“identifier”:“pega.gogga.net.za”,“challenge_type”:“http-01”}
{“level”:“debug”,“ts”:1769521705.4053311,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/chall/261135053/21385751433/9juEqQ",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“201”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:25 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”,“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385751433;rel="up"”],“Location”:[“https://acme-staging-v02.api.letsencrypt.org/acme/chall/261135053/21385751433/9juEqQ"],“Replay-Nonce”:[“NrRKSEyKhadR5KRB6KatXA279E6wbRQvcZTbpf1b2nXbL4c0p6g”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},"status_code”:200}
{“level”:“debug”,“ts”:1769521705.4054115,“msg”:“challenge accepted”,“identifier”:“pega.gogga.net.za”,“challenge_type”:“http-01”}
{“level”:“debug”,“ts”:1769521705.935615,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385751433",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:25 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“NrRKSEyKFgRWs9K6Gm_p9gS7iFfRkJAaF-N3aZkCKR305W9hr3A”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“info”,“ts”:1769521706.2873595,“logger”:“http”,“msg”:“served key authentication”,“identifier”:“pega.gogga.net.za”,“challenge”:“http-01”,“remote”:“[2600:3000:2710:300::81]:56171”,“distributed”:false}
2026/01/27 13:48:26.287 e[34mINFOe[0m http.log.access.log0 handled request {“request”: {“remote_ip”: “2600:3000:2710:300::81”, “remote_port”: “56171”, “client_ip”: “2600:3000:2710:300::81”, “proto”: “HTTP/1.1”, “method”: “GET”, “host”: “pega.gogga.net.za”, “uri”: “/.well-known/acme-challenge/A5TvMuxk4O8TLtpyfkem3IWWBJqb9A7-UmmsA5VNJ1I”, “headers”: {“User-Agent”: [“Mozilla/5.0 (compatible; Let’s Encrypt validation server; +https://www.letsencrypt.org)”], “Accept”: [“/”], “Accept-Encoding”: [“gzip”], “Connection”: [“close”]}}, “bytes_read”: 0, “user_id”: “”, “duration”: 0.000034925, “size”: 87, “status”: 200, “resp_headers”: {“Server”: [“Caddy”], “Content-Type”: [“text/plain”]}}
{“level”:“debug”,“ts”:1769521706.4666119,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385751433",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:26 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“sXXzwma1kmB_pcJcz-lFUsToJg8SiWTW7-SY5N5-z3wevxdMlFk”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“debug”,“ts”:1769521706.9973695,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385751433",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:26 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“sXXzwma1GuxQyDDI0M_DzxciKZ0rUN2rjjsHxrWIICEFVyYszLE”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“info”,“ts”:1769521707.229258,“logger”:“http”,“msg”:“served key authentication”,“identifier”:“pega.gogga.net.za”,“challenge”:“http-01”,“remote”:“[2a05:d016:dcc:9101:927a:3d9d:53d0:5358]:57136”,“distributed”:false}
2026/01/27 13:48:27.229 e[34mINFOe[0m http.log.access.log0 handled request {“request”: {“remote_ip”: “2a05:d016:dcc:9101:927a:3d9d:53d0:5358”, “remote_port”: “57136”, “client_ip”: “2a05:d016:dcc:9101:927a:3d9d:53d0:5358”, “proto”: “HTTP/1.1”, “method”: “GET”, “host”: “pega.gogga.net.za”, “uri”: “/.well-known/acme-challenge/A5TvMuxk4O8TLtpyfkem3IWWBJqb9A7-UmmsA5VNJ1I”, “headers”: {“User-Agent”: [“Mozilla/5.0 (compatible; Let’s Encrypt validation server; +https://www.letsencrypt.org)”], “Accept”: [“/”], “Accept-Encoding”: [“gzip”], “Connection”: [“close”]}}, “bytes_read”: 0, “user_id”: “”, “duration”: 0.000029067, “size”: 87, “status”: 200, “resp_headers”: {“Server”: [“Caddy”], “Content-Type”: [“text/plain”]}}
{“level”:“debug”,“ts”:1769521707.5269861,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385751433",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:27 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“sXXzwma1VzoJiu0ffBMcv3g7MbAsbY1SzYpFe-DgXDSCBtzGgMk”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“debug”,“ts”:1769521708.0578198,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385751433",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“1135”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:27 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“NrRKSEyKkkrgiak7bCiJJ7esbL11tW7BARrXtttMmKPQHmknNX4”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“error”,“ts”:1769521708.0580535,“msg”:“challenge failed”,“identifier”:“pega.gogga.net.za”,“challenge_type”:“http-01”,“problem”:{“type”:“urn:ietf:params:acme:error:connection”,“title”:“”,“detail”:“During secondary validation: 2c0f:fc78:feef:e000:1:2:3:31: Fetching http://pega.gogga.net.za/.well-known/acme-challenge/A5TvMuxk4O8TLtpyfkem3IWWBJqb9A7-UmmsA5VNJ1I: Error getting validation data”,“instance”:“”,“subproblems”:null},“stacktrace”:“github.com/mholt/acmez/v3.(*Client).pollAuthorization\n\tgithub.com/mholt/acmez/v3@v3.1.2/client.go:557\ngithub.com/mholt/acmez/v3.(*Client).solveChallenges\n\tgithub.com/mholt/acmez/v3@v3.1.2/client.go:378\ngithub.com/mholt/acmez/v3.(*Client).ObtainCertificate\n\tgithub.com/mholt/acmez/v3@v3.1.2/client.go:136\ngithub.com/caddyserver/certmagic.(*ACMEIssuer).doIssue\n\tgithub.com/caddyserver/certmagic@v0.24.0/acmeissuer.go:489\ngithub.com/caddyserver/certmagic.(*ACMEIssuer).Issue\n\tgithub.com/caddyserver/certmagic@v0.24.0/acmeissuer.go:382\ngithub.com/caddyserver/caddy/v2/modules/caddytls.(*ACMEIssuer).Issue\n\tgithub.com/caddyserver/caddy/v2@v2.10.2/modules/caddytls/acmeissuer.go:288\ngithub.com/caddyserver/certmagic.(*Config).obtainCert.func2\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:626\ngithub.com/caddyserver/certmagic.doWithRetry\n\tgithub.com/caddyserver/certmagic@v0.24.0/async.go:104\ngithub.com/caddyserver/certmagic.(*Config).obtainCert\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:700\ngithub.com/caddyserver/certmagic.(*Config).ObtainCertAsync\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:505\ngithub.com/caddyserver/certmagic.(*Config).manageOne.func1\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:415\ngithub.com/caddyserver/certmagic.(jobManager).worker\n\tgithub.com/caddyserver/certmagic@v0.24.0/async.go:73"}
{“level”:“error”,“ts”:1769521708.0581295,“msg”:“validating authorization”,“identifier”:“pega.gogga.net.za”,“problem”:{“type”:“urn:ietf:params:acme:error:connection”,“title”:“”,“detail”:“During secondary validation: 2c0f:fc78:feef:e000:1:2:3:31: Fetching http://pega.gogga.net.za/.well-known/acme-challenge/A5TvMuxk4O8TLtpyfkem3IWWBJqb9A7-UmmsA5VNJ1I: Error getting validation data”,“instance”:“”,“subproblems”:null},“order”:“https://acme-staging-v02.api.letsencrypt.org/acme/order/261135053/31102266723",“attempt”:1,“max_attempts”:3,“stacktrace”:"github.com/mholt/acmez/v3.(*Client).ObtainCertificate\n\tgithub.com/mholt/acmez/v3@v3.1.2/client.go:152\ngithub.com/caddyserver/certmagic.(*ACMEIssuer).doIssue\n\tgithub.com/caddyserver/certmagic@v0.24.0/acmeissuer.go:489\ngithub.com/caddyserver/certmagic.(*ACMEIssuer).Issue\n\tgithub.com/caddyserver/certmagic@v0.24.0/acmeissuer.go:382\ngithub.com/caddyserver/caddy/v2/modules/caddytls.(*ACMEIssuer).Issue\n\tgithub.com/caddyserver/caddy/v2@v2.10.2/modules/caddytls/acmeissuer.go:288\ngithub.com/caddyserver/certmagic.(*Config).obtainCert.func2\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:626\ngithub.com/caddyserver/certmagic.doWithRetry\n\tgithub.com/caddyserver/certmagic@v0.24.0/async.go:104\ngithub.com/caddyserver/certmagic.(*Config).obtainCert\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:700\ngithub.com/caddyserver/certmagic.(*Config).ObtainCertAsync\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:505\ngithub.com/caddyserver/certmagic.(*Config).manageOne.func1\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:415\ngithub.com/caddyserver/certmagic.(*jobManager).worker\n\tgithub.com/caddyserver/certmagic@v0.24.0/async.go:73”}
{“level”:“debug”,“ts”:1769521709.0583398,“msg”:“creating order”,“account”:“https://acme-staging-v02.api.letsencrypt.org/acme/acct/261135053",“identifiers”:["pega.gogga.net.za”]}
{“level”:“debug”,“ts”:1769521709.3437827,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/new-order",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“363”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:29 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Location”:[“https://acme-staging-v02.api.letsencrypt.org/acme/order/261135053/31102268373"],“Replay-Nonce”:[“sXXzwma1LTdMraIV2ak4sG5lS7HGgRdsbfITe5H7CKd7FmQ-T74”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},"status_code”:201}
{“level”:“debug”,“ts”:1769521709.6234012,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385752023",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:29 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“sXXzwma1sMR5X0rUe7tPtPcUh2wv85_KGZsmD_WffFUx02Oui8k”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“debug”,“ts”:1769521709.6235096,“msg”:“no solver configured”,“challenge_type”:“dns-01”}
{“level”:“info”,“ts”:1769521709.6235244,“msg”:“trying to solve challenge”,“identifier”:“pega.gogga.net.za”,“challenge_type”:“tls-alpn-01”,“ca”:“https://acme-staging-v02.api.letsencrypt.org/directory”}
{“level”:“debug”,“ts”:1769521709.6275342,“msg”:“waiting for solver before continuing”,“identifier”:“pega.gogga.net.za”,“challenge_type”:“tls-alpn-01”}
{“level”:“debug”,“ts”:1769521709.6275663,“msg”:“done waiting for solver”,“identifier”:“pega.gogga.net.za”,“challenge_type”:“tls-alpn-01”}
{“level”:“debug”,“ts”:1769521709.6279507,“logger”:“http.stdlib”,“msg”:“http: TLS handshake error from 127.0.0.1:52206: EOF”}
{“level”:“debug”,“ts”:1769521709.907824,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/chall/261135053/21385752023/NaPd8g",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“205”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:29 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”,“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385752023;rel="up"”],“Location”:[“https://acme-staging-v02.api.letsencrypt.org/acme/chall/261135053/21385752023/NaPd8g"],“Replay-Nonce”:[“sXXzwma1uhRKCxFGYlU6bzjwUwTRSzs0Y3fcNDBviEpAyMU56H4”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},"status_code”:200}
{“level”:“debug”,“ts”:1769521709.907942,“msg”:“challenge accepted”,“identifier”:“pega.gogga.net.za”,“challenge_type”:“tls-alpn-01”}
{“level”:“debug”,“ts”:1769521710.4390347,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385752023",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:30 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“sXXzwma1nY9A8P8KEu-qkEa5cYIMLQPfiF0jrlkDvUbF-fAzY3A”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“debug”,“ts”:1769521710.9692361,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385752023",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:30 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“sXXzwma1QMvBspZN4OHh5O4mX-NkPNYIdM3zh5__aa3mhUr1XJM”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“debug”,“ts”:1769521711.262059,“logger”:“events”,“msg”:“event”,“name”:“tls_get_certificate”,“id”:“46342de4-2167-4b68-a7f1-cf8689d494ee”,“origin”:“tls”,“data”:{“client_hello”:{“CipherSuites”:[49195,49199,49196,49200,52393,52392,49161,49171,49162,49172,4865,4866,4867],“ServerName”:“pega.gogga.net.za”,“SupportedCurves”:[4588,29,23,24,25],“SupportedPoints”:“AA==”,“SignatureSchemes”:[2052,1027,2055,2053,2054,1025,1281,1537,1283,1539],“SupportedProtos”:[“acme-tls/1”],“SupportedVersions”:[772,771],“RemoteAddr”:{“IP”:“2600:3000:2710:300::83”,“Port”:58325,“Zone”:“”},“LocalAddr”:{“IP”:“2c0f:fc78:feef:e000:1:2:3:31”,“Port”:443,“Zone”:“”}}}}
{“level”:“info”,“ts”:1769521711.2621958,“logger”:“tls”,“msg”:“served key authentication certificate”,“server_name”:“pega.gogga.net.za”,“challenge”:“tls-alpn-01”,“remote”:“[2600:3000:2710:300::83]:58325”,“distributed”:false}
{“level”:“debug”,“ts”:1769521711.49932,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385752023",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:31 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“NrRKSEyKycZQk3uQhJYLuBKDC-sIuVNwYM522OWvUd0H6WPLbdE”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“debug”,“ts”:1769521711.7422347,“logger”:“events”,“msg”:“event”,“name”:“tls_get_certificate”,“id”:“4bf7c2d6-7f11-4567-9bd7-ea3a60adb6b7”,“origin”:“tls”,“data”:{“client_hello”:{“CipherSuites”:[49195,49199,49196,49200,52393,52392,49161,49171,49162,49172,4865,4866,4867],“ServerName”:“pega.gogga.net.za”,“SupportedCurves”:[4588,29,23,24,25],“SupportedPoints”:“AA==”,“SignatureSchemes”:[2052,1027,2055,2053,2054,1025,1281,1537,1283,1539],“SupportedProtos”:[“acme-tls/1”],“SupportedVersions”:[772,771],“RemoteAddr”:{“IP”:“2a05:d016:dcc:9101:927a:3d9d:53d0:5358”,“Port”:43214,“Zone”:“”},“LocalAddr”:{“IP”:“2c0f:fc78:feef:e000:1:2:3:31”,“Port”:443,“Zone”:“”}}}}
{“level”:“info”,“ts”:1769521711.7422867,“logger”:“tls”,“msg”:“served key authentication certificate”,“server_name”:“pega.gogga.net.za”,“challenge”:“tls-alpn-01”,“remote”:“[2a05:d016:dcc:9101:927a:3d9d:53d0:5358]:43214”,“distributed”:false}
{“level”:“debug”,“ts”:1769521712.029742,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385752023",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:31 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“sXXzwma1HV2Jkb63m9HFybK3L-Vay__hd1SIiy_jVOs6Lbts1hA”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“debug”,“ts”:1769521712.5614524,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385752023",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“843”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:32 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“NrRKSEyKH2SHmNEonR51i3kpur_58_8-2FA0nlSy2RhTCzp0QTI”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“debug”,“ts”:1769521713.091792,“msg”:“http request”,“method”:“POST”,“url”:“https://acme-staging-v02.api.letsencrypt.org/acme/authz/261135053/21385752023",“headers”:{“Content-Type”:[“application/jose+json”],“User-Agent”:["Caddy/2.10.2 CertMagic acmez (linux; amd64)”]},“response_headers”:{“Boulder-Requester”:[“261135053”],“Cache-Control”:[“public, max-age=0, no-cache”],“Content-Length”:[“971”],“Content-Type”:[“application/json”],“Date”:[“Tue, 27 Jan 2026 13:48:32 GMT”],“Link”:[“https://acme-staging-v02.api.letsencrypt.org/directory;rel="index"”],“Replay-Nonce”:[“NrRKSEyKVxuoDCNoMDRV9EEi0h970_my9pTbb9125G-6E8yise8”],“Server”:[“nginx”],“Strict-Transport-Security”:[“max-age=604800”],“X-Frame-Options”:[“DENY”]},“status_code”:200}
{“level”:“error”,“ts”:1769521713.0919888,“msg”:“challenge failed”,“identifier”:“pega.gogga.net.za”,“challenge_type”:“tls-alpn-01”,“problem”:{“type”:“urn:ietf:params:acme:error:malformed”,“title”:“”,“detail”:“During secondary validation: Unable to contact "pega.gogga.net.za" at "2c0f:fc78:feef:e000:1:2:3:31", no IPv4 addresses to try as fallback”,“instance”:“”,“subproblems”:null},“stacktrace”:"github.com/mholt/acmez/v3.(Client).pollAuthorization\n\tgithub.com/mholt/acmez/v3@v3.1.2/client.go:557\ngithub.com/mholt/acmez/v3.(Client).solveChallenges\n\tgithub.com/mholt/acmez/v3@v3.1.2/client.go:378\ngithub.com/mholt/acmez/v3.(Client).ObtainCertificate\n\tgithub.com/mholt/acmez/v3@v3.1.2/client.go:136\ngithub.com/caddyserver/certmagic.(ACMEIssuer).doIssue\n\tgithub.com/caddyserver/certmagic@v0.24.0/acmeissuer.go:489\ngithub.com/caddyserver/certmagic.(ACMEIssuer).Issue\n\tgithub.com/caddyserver/certmagic@v0.24.0/acmeissuer.go:382\ngithub.com/caddyserver/caddy/v2/modules/caddytls.(ACMEIssuer).Issue\n\tgithub.com/caddyserver/caddy/v2@v2.10.2/modules/caddytls/acmeissuer.go:288\ngithub.com/caddyserver/certmagic.(Config).obtainCert.func2\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:626\ngithub.com/caddyserver/certmagic.doWithRetry\n\tgithub.com/caddyserver/certmagic@v0.24.0/async.go:104\ngithub.com/caddyserver/certmagic.(Config).obtainCert\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:700\ngithub.com/caddyserver/certmagic.(Config).ObtainCertAsync\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:505\ngithub.com/caddyserver/certmagic.(Config).manageOne.func1\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:415\ngithub.com/caddyserver/certmagic.(jobManager).worker\n\tgithub.com/caddyserver/certmagic@v0.24.0/async.go:73"}
{“level”:“error”,“ts”:1769521713.0920777,“msg”:“validating authorization”,“identifier”:“pega.gogga.net.za”,“problem”:{“type”:“urn:ietf:params:acme:error:malformed”,“title”:“”,“detail”:“During secondary validation: Unable to contact "pega.gogga.net.za" at "2c0f:fc78:feef:e000:1:2:3:31", no IPv4 addresses to try as fallback”,“instance”:“”,“subproblems”:null},“order”:“https://acme-staging-v02.api.letsencrypt.org/acme/order/261135053/31102268373",“attempt”:2,“max_attempts”:3,“stacktrace”:"github.com/mholt/acmez/v3.(*Client).ObtainCertificate\n\tgithub.com/mholt/acmez/v3@v3.1.2/client.go:152\ngithub.com/caddyserver/certmagic.(*ACMEIssuer).doIssue\n\tgithub.com/caddyserver/certmagic@v0.24.0/acmeissuer.go:489\ngithub.com/caddyserver/certmagic.(*ACMEIssuer).Issue\n\tgithub.com/caddyserver/certmagic@v0.24.0/acmeissuer.go:382\ngithub.com/caddyserver/caddy/v2/modules/caddytls.(*ACMEIssuer).Issue\n\tgithub.com/caddyserver/caddy/v2@v2.10.2/modules/caddytls/acmeissuer.go:288\ngithub.com/caddyserver/certmagic.(*Config).obtainCert.func2\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:626\ngithub.com/caddyserver/certmagic.doWithRetry\n\tgithub.com/caddyserver/certmagic@v0.24.0/async.go:104\ngithub.com/caddyserver/certmagic.(*Config).obtainCert\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:700\ngithub.com/caddyserver/certmagic.(*Config).ObtainCertAsync\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:505\ngithub.com/caddyserver/certmagic.(*Config).manageOne.func1\n\tgithub.com/caddyserver/certmagic@v0.24.0/config.go:415\ngithub.com/caddyserver/certmagic.(*jobManager).worker\n\tgithub.com/caddyserver/certmagic@v0.24.0/async.go:73”}
{“level”:“error”,“ts”:1769521713.092134,“logger”:“tls.obtain”,“msg”:“could not get certificate from issuer”,“identifier”:“pega.gogga.net.za”,“issuer”:“acme-staging-v02.api.letsencrypt.org-directory”,“error”:“HTTP 400 urn:ietf:params:acme:error:malformed - During secondary validation: Unable to contact "pega.gogga.net.za" at "2c0f:fc78:feef:e000:1:2:3:31", no IPv4 addresses to try as fallback”}
{“level”:“debug”,“ts”:1769521713.0921538,“logger”:“events”,“msg”:“event”,“name”:“cert_failed”,“id”:“f28f5c03-190b-4685-ae1c-31a4ebe3240f”,“origin”:“tls”,“data”:{“error”:{},“identifier”:“pega.gogga.net.za”,“issuers”:[“acme-staging-v02.api.letsencrypt.org-directory”],“renewal”:false}}
{“level”:“error”,“ts”:1769521713.0921798,“logger”:“tls.obtain”,“msg”:“will retry”,“error”:“[pega.gogga.net.za] Obtain: [pega.gogga.net.za] solving challenge: pega.gogga.net.za: [pega.gogga.net.za] authorization failed: HTTP 400 urn:ietf:params:acme:error:malformed - During secondary validation: Unable to contact "pega.gogga.net.za" at "2c0f:fc78:feef:e000:1:2:3:31", no IPv4 addresses to try as fallback (ca=https://acme-staging-v02.api.letsencrypt.org/directory)”,“attempt”:1,“retrying_in”:60,“elapsed”:9.664062605,“max_duration”:2592000}
2026/01/27 13:48:38.979 e[34mINFOe[0m http.log.access.log0 handled request {“request”: {“remote_ip”: “2a01:4f8:c17:706d::1”, “remote_port”: “33382”, “client_ip”: “2a01:4f8:c17:706d::1”, “proto”: “HTTP/1.1”, “method”: “GET”, “host”: “pega.gogga.net.za”, “uri”: “/”, “headers”: {“Accept”: ["
/
“], “User-Agent”: [“curl/7.88.1”]}}, “bytes_read”: 0, “user_id”: “”, “duration”: 0.000023033, “size”: 0, “status”: 308, “resp_headers”: {“Location”: [“https://pega.gogga.net.za/”], “Content-Type”: [], “Server”: [“Caddy”], “Connection”: [“close”]}}
{“level”:“debug”,“ts”:1769521731.385932,“logger”:“events”,“msg”:“event”,“name”:“tls_get_certificate”,“id”:“b435e817-1540-4bab-9cc1-73628e2e84bc”,“origin”:“tls”,“data”:{“client_hello”:{“CipherSuites”:[4866,4867,4865,49196,49200,159,52393,52392,52394,49195,49199,158,49188,49192,107,49187,49191,103,49162,49172,57,49161,49171,51,157,156,61,60,53,47,255],“ServerName”:“pega.gogga.net.za”,“SupportedCurves”:[29,23,30,25,24,256,257,258,259,260],“SupportedPoints”:“AAEC”,“SignatureSchemes”:[1027,1283,1539,2055,2056,2057,2058,2059,2052,2053,2054,1025,1281,1537,771,769,770,1026,1282,1538],“SupportedProtos”:[“h2”,“http/1.1”],“SupportedVersions”:[772,771,770,769],“RemoteAddr”:{“IP”:“2a01:4f8:c17:706d::1”,“Port”:57112,“Zone”:”“},“LocalAddr”:{“IP”:“2c0f:fc78:feef:e000:1:2:3:31”,“Port”:443,“Zone”:”“}}}}
{“level”:“debug”,“ts”:1769521731.3860252,“logger”:“tls.handshake”,“msg”:“no matching certificates and no custom selection logic”,“identifier”:“pega.gogga.net.za”}
{“level”:“debug”,“ts”:1769521731.386035,“logger”:“tls.handshake”,“msg”:“no matching certificates and no custom selection logic”,“identifier”:”
.gogga.net.za"}
{“level”:“debug”,“ts”:1769521731.3860397,“logger”:“tls.handshake”,“msg”:“no matching certificates and no custom selection logic”,“identifier”:"
.
.net.za"}
{“level”:“debug”,“ts”:1769521731.3860447,“logger”:“tls.handshake”,“msg”:“no matching certificates and no custom selection logic”,“identifier”:"
.
.
.za"}
{“level”:“debug”,“ts”:1769521731.386049,“logger”:“tls.handshake”,“msg”:“no matching certificates and no custom selection logic”,“identifier”:"
.
.
.
”}
{“level”:“debug”,“ts”:1769521731.386078,“logger”:“tls.handshake”,“msg”:“no certificate matching TLS ClientHello”,“remote_ip”:“2a01:4f8:c17:706d::1”,“remote_port”:“57112”,“server_name”:“pega.gogga.net.za”,“remote”:“[2a01:4f8:c17:706d::1]:57112”,“identifier”:“pega.gogga.net.za”,“cipher_suites”:[4866,4867,4865,49196,49200,159,52393,52392,52394,49195,49199,158,49188,49192,107,49187,49191,103,49162,49172,57,49161,49171,51,157,156,61,60,53,47,255],“cert_cache_fill”:0,“load_or_obtain_if_necessary”:true,“on_demand”:false}
{“level”:“debug”,“ts”:1769521731.3861625,“logger”:“http.stdlib”,“msg”:“http: TLS handshake error from [2a01:4f8:c17:706d::1]:57112: no certificate available for ‘pega.gogga.net.za’”}
{“level”:“info”,“ts”:1769521745.3395119,“msg”:“shutting down”,“signal”:“SIGINT”}
{“level”:“warn”,“ts”:1769521745.339591,“msg”:“exiting; byeee!! :waving_hand:”,“signal”:“SIGINT”}
{“level”:“debug”,“ts”:1769521745.3396337,“logger”:“events”,“msg”:“event”,“name”:“stopping”,“id”:“5107b05c-cd81-4609-adc9-25f70e06beec”,“origin”:“”,“data”:null}
{“level”:“info”,“ts”:1769521745.339677,“logger”:“http”,“msg”:“servers shutting down with eternal grace period”}
{“level”:“info”,“ts”:1769521745.3401008,“logger”:“admin”,“msg”:“stopped previous server”,“address”:“localhost:2019”}
{“level”:“info”,“ts”:1769521745.34012,“msg”:“shutdown complete”,“signal”:“SIGINT”,“exit_code”:0}

PASTE OVER THIS, BETWEEN THE ``` LINES.
Please use the preview pane to ensure it looks nice.

3. Caddy version:

First noticed today with 2.6.2 (from Devuan daedalus) upgraded to Excalibur and the latest 2.10.2 from clousmith

4. How I installed and ran Caddy:

cloudsmith version run from CLI using:
/usr/bin/caddy run --config /etc/caddy/Caddyfile --envfile /etc/caddy/CaddyEnv --environ
.CaddyEnv:
XDG_DATA_HOME=/etc/caddy/ssl
USER=www-data
.Caddyfile:
{
debug
email sysadmin@hevis.co.za
acme_ca https://acme-staging-v02.api.letsencrypt.org/directory
}

Main Web UI & API

pega.gogga.net.za {
reverse_proxy https://127.0.0.1:5000 {
header_up X-Real-IP {remote_host}
transport http {
tls_insecure_skip_verify
}
}
log {
output stdout
format console
level DEBUG
}
}

a. System environment:

Devuan 4 (daedalus) & Devuan 5 (Excalibur) in a LXC
IPv6 only public network → ZeroSSL doesn’t work in this case (know api endpoint issue)

b. Command:

/usr/bin/caddy run --config /etc/caddy/Caddyfile --envfile /etc/caddy/CaddyEnv --environ

PASTE OVER THIS, BETWEEN THE ``` LINES.
Please use the preview pane to ensure it looks nice.

c. Service/unit/compose file:

n/a

PASTE OVER THIS, BETWEEN THE ``` LINES.
Please use the preview pane to ensure it looks nice.

d. My complete Caddy config:

{
debug
email sysadmin@hevis.co.za
acme_ca https://acme-staging-v02.api.letsencrypt.org/directory
}

Main Web UI & API

pega.gogga.net.za {
reverse_proxy https://127.0.0.1:5000 {
header_up X-Real-IP {remote_host}
transport http {
tls_insecure_skip_verify
}
}
log {
output stdout
format console
level DEBUG
}
}

PASTE OVER THIS, BETWEEN THE ``` LINES.
Please use the preview pane to ensure it looks nice.

5. Debugging thus far:

hvisage@w1:~|⇒ curl -kv http://pega.gogga.net.za

  • Trying [2c0f:fc78:feef:e000:1:2:3:31]:80…
  • Connected to pega.gogga.net.za (2c0f:fc78:feef:e000:1:2:3:31) port 80 (#0)

GET / HTTP/1.1
Host: pega.gogga.net.za
User-Agent: curl/7.88.1
Accept: /

< HTTP/1.1 308 Permanent Redirect
< Connection: close
< Location: https://pega.gogga.net.za/
< Server: Caddy
< Date: Tue, 27 Jan 2026 13:48:38 GMT
< Content-Length: 0
<

  • Closing connection 0
    hvisage@w1:~|⇒ curl -kv https://pega.gogga.net.za
  • Trying [2c0f:fc78:feef:e000:1:2:3:31]:443…
  • Connected to pega.gogga.net.za (2c0f:fc78:feef:e000:1:2:3:31) port 443 (#0)
  • ALPN: offers h2,http/1.1
  • TLSv1.3 (OUT), TLS handshake, Client hello (1):
  • TLSv1.3 (IN), TLS alert, internal error (592):
  • OpenSSL/3.0.15: error:0A000438:SSL routines::tlsv1 alert internal error
  • Closing connection 0
    curl: (35) OpenSSL/3.0.15: error:0A000438:SSL routines::tlsv1 alert internal error

Thus the Secondary check tries to get to HTTPS, that fails when there aren’t any Caddy loaded certificate. Not a problem for renewals, but a fresh deploy there aren’t any

Please format your post properly. It is really hard to read like this.

The submission template says:

PASTE OVER THIS, BETWEEN THE ``` LINES.
Please use the preview pane to ensure it looks nice.

That is not a suggestion, it is a requirement. These instructions are there to help keep posts clean and readable, so please do not ignore them. Skipping them makes things messy for everyone.

3 Likes

Apologies… tried to do it… seems I missed that one

P(&@#$(%&@#$(&%P(#@$&%(& can’t edit the post anymore ;(

Let’s retry

isn’t there a method to create an actual FORM to paste in the stuff, markdown has this problem that one ``` missed and the whole post is bad and @timelordx etc. will complain ;(

There’s a paid extension that does that, but we don’t feel like it’s worth it to us.

I would just use the preview pane and it should be obvious when something major is wrong with the formatting.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.