Hi,
Mailcow (Docker, compose v5.4.0, Ubuntu) can’t issue Let’s Encrypt certs. acme-mailcow keeps trying HTTP-01 (fails) even with DNS-01 enabled (ACME_DNS_CHALLENGE=y, Reg.ru).
Logs show IP mismatch: container sees 89.250.2.157, but jilserv.ru DNS returns 31.31.196.121. Also seeing an ambiguous redirect error in obtain-certificate-dns.sh. IPv6 isn’t detected.
Log snippet:
text
acme-mailcow-1 | Confirmed A record with IP 89.250.2.157, but HTTP validation failed
acme-mailcow-1 | Cannot match your IP 89.250.2.157 against hostname jilserv.ru (DNS returned 31.31.196.121)
acme-mailcow-1 | Cannot validate any hostnames, skipping Let’s Encrypt for 1 hour.
Env: two IPs on host; jilserv.ru → 31.31.196.121, mail2.jilserv.ru → 89.250.2.157. Tried recreating acme-mailcow, rolling back VM, manual acme.sh (falls back to HTTP).
Questions:
Why does it ignore DNS-01 and use HTTP-01 anyway?
How to handle the ambiguous redirect issue?
Best practice for domain/subdomain with different IPs?
Want either a fix for auto-issuance or clear steps to use a manually issued cert and disable auto-issuance (SKIP_LETS_ENCRYPT=y).
Thanks for any help!