- Hi all,
- TransIP DNS-01 challenge, supported by ACME.sh
- No settings changed, so there should be no delta between cronjob and manual when assuming the commandline are identical
- I am unable to check what the cronjob actually invokes (commandline) versus the manual renew button (commandline)
- Error in cronjob (above the code 2) says: AcmeClient: domain validation failed (dns01)
Ok, same issue for me. Automatic does not work. Manual does.. Situation:
Redacted (replaced domain by <redacted>) logs from failed cron / succesful manual
Failed cron:
System log
2026-10-22T04:12:01opnsenseAcmeClient: validation for certificate failed: *.hq.<redacted>.nl
2026-10-22T04:12:01opnsenseAcmeClient: domain validation failed (dns01)
2026-10-22T04:12:01opnsenseAcmeClient: AcmeClient: The shell command returned exit code '2': '/usr/local/sbin/acme.sh --renew --syslog 6 --log-level 1 --server 'letsencrypt' --dns 'dns_transip' --dnssleep '300' --home '/var/etc/acme-client/home' --cert-home '/var/etc/acme-client/cert-home/67e6acd371dce3.58753914' --certpath '/var/etc/acme-client/certs/67e6acd371dce3.58753914/cert.pem' --keypath '/var/etc/acme-client/keys/67e6acd371dce3.58753914/private.key' --capath '/var/etc/acme-client/certs/67e6acd371dce3.58753914/chain.pem' --fullchainpath '/var/etc/acme-client/certs/67e6acd371dce3.58753914/fullchain.pem' --domain '*.hq.<redacted>.nl' --days '30' --keylength 'ec-384' --ecc --accountconf '/var/etc/acme-client/accounts/67e6a9b54d13a7.99155545_prod/account.conf''
2026-10-22T04:12:00opnsenseAcmeClient: using challenge type: TransIP_DNS-01
2026-10-22T04:12:00opnsenseAcmeClient: account is registered: <redacted>.nl
2026-10-22T04:12:00opnsenseAcmeClient: using CA: letsencrypt
2026-10-22T04:12:00opnsenseAcmeClient: renew certificate: *.hq.<redacted>.nl
2026-10-22T04:12:00opnsenseAcmeClient: certificate must be issued/renewed: *.hq.<redacted>.nl
ACME log:
2026-10-22T04:12:01acme.sh[Thu Oct 22 04:12:01 CEST 2026] Add '--force' to force renewal.
2026-10-22T04:12:01acme.sh[Thu Oct 22 04:12:01 CEST 2026] Skipping. Next renewal time is: 2026-11-15T13:56:40Z
2026-10-22T04:12:00acme.sh[Thu Oct 22 04:12:00 CEST 2026] Renewing using Le_API=https://acme-v02.api.letsencrypt.org/directory
2026-10-22T04:12:00acme.sh[Thu Oct 22 04:12:00 CEST 2026] Renewing: '*.hq.<redacted>.nl'
2026-10-22T04:12:00acme.sh[Thu Oct 22 04:12:00 CEST 2026] Renew: *.hq.<redacted>.nl
Succesful manual
System Log
2026-10-23T14:05:34configAcmeClient: updated ACME X.509 certificate: *.hq.<redacted>.nl (67e6ae3a0eae7)
2026-10-23T14:05:34opnsenseAcmeClient: successfully issued/renewed certificate: *.hq.<redacted>.nl
2026-10-23T14:05:34opnsenseAcmeClient: AcmeClient: The shell command returned exit code '0': '/usr/local/sbin/acme.sh --issue --syslog 6 --log-level 1 --server 'letsencrypt' --dns 'dns_transip' --dnssleep '300' --home '/var/etc/acme-client/home' --cert-home '/var/etc/acme-client/cert-home/67e6acd371dce3.58753914' --certpath '/var/etc/acme-client/certs/67e6acd371dce3.58753914/cert.pem' --keypath '/var/etc/acme-client/keys/67e6acd371dce3.58753914/private.key' --capath '/var/etc/acme-client/certs/67e6acd371dce3.58753914/chain.pem' --fullchainpath '/var/etc/acme-client/certs/67e6acd371dce3.58753914/fullchain.pem' --domain '*.hq.<redacted>.nl' --days '30' --force --keylength 'ec-384' --accountconf '/var/etc/acme-client/accounts/67e6a9b54d13a7.99155545_prod/account.conf''
2026-10-23T14:00:20opnsenseAcmeClient: using challenge type: TransIP_DNS-01
2026-10-23T14:00:20opnsenseAcmeClient: account is registered: <redacted>.nl
2026-10-23T14:00:20opnsenseAcmeClient: using CA: letsencrypt
2026-10-23T14:00:20opnsenseAcmeClient: issue certificate: *.hq.<redacted>.nl
2026-10-23T14:00:20opnsenseAcmeClient: certificate must be issued/renewed: *.hq.<redacted>.nl
ACME Log:
2026-10-23T14:05:34acme.sh[Fri Oct 23 14:05:34 CEST 2026] Installing full chain to: /var/etc/acme-client/certs/67e6acd371dce3.58753914/fullchain.pem
2026-10-23T14:05:33acme.sh[Fri Oct 23 14:05:33 CEST 2026] Installing key to: /var/etc/acme-client/keys/67e6acd371dce3.58753914/private.key
2026-10-23T14:05:33acme.sh[Fri Oct 23 14:05:33 CEST 2026] Installing CA to: /var/etc/acme-client/certs/67e6acd371dce3.58753914/chain.pem
2026-10-23T14:05:33acme.sh[Fri Oct 23 14:05:33 CEST 2026] Installing cert to: /var/etc/acme-client/certs/67e6acd371dce3.58753914/cert.pem
2026-10-23T14:05:33acme.sh[Fri Oct 23 14:05:33 CEST 2026] It is later than the renewal time you asked for, keeping: 2026-11-21T12:05:33Z
2026-10-23T14:05:33acme.sh[Fri Oct 23 14:05:33 CEST 2026] ARI suggestedWindow: 2026-12-21T13:51:04Z to 2026-12-23T09:01:54Z
2026-10-23T14:05:33acme.sh[Fri Oct 23 14:05:33 CEST 2026] And the full-chain cert is in: /var/etc/acme-client/cert-home/67e6acd371dce3.58753914/*.hq.<redacted>.nl_ecc/fullchain.cer
2026-10-23T14:05:33acme.sh[Fri Oct 23 14:05:33 CEST 2026] The intermediate CA cert is in: /var/etc/acme-client/cert-home/67e6acd371dce3.58753914/*.hq.<redacted>.nl_ecc/ca.cer
2026-10-23T14:05:33acme.sh[Fri Oct 23 14:05:33 CEST 2026] Your cert key is in: /var/etc/acme-client/cert-home/67e6acd371dce3.58753914/*.hq.<redacted>.nl_ecc/*.hq.<redacted>.nl.key
2026-10-23T14:05:33acme.sh[Fri Oct 23 14:05:33 CEST 2026] Your cert is in: /var/etc/acme-client/cert-home/67e6acd371dce3.58753914/*.hq.<redacted>.nl_ecc/*.hq.<redacted>.nl.cer
2026-10-23T14:05:33acme.sh[Fri Oct 23 14:05:33 CEST 2026] Cert success.
2026-10-23T14:05:32acme.sh[Fri Oct 23 14:05:32 CEST 2026] Le_LinkCert='https://acme-v02.api.letsencrypt.org/acme/cert/06d3fff3a820ef9fc44aa882be9d93235dc1'
2026-10-23T14:05:32acme.sh[Fri Oct 23 14:05:32 CEST 2026] Downloading cert.
2026-10-23T14:05:29acme.sh[Fri Oct 23 14:05:29 CEST 2026] Le_OrderFinalize='https://acme-v02.api.letsencrypt.org/acme/finalize/2590863706/573108723112'
2026-10-23T14:05:29acme.sh[Fri Oct 23 14:05:29 CEST 2026] Let's finalize the order.
2026-10-23T14:05:29acme.sh[Fri Oct 23 14:05:29 CEST 2026] Verification finished, beginning signing.
2026-10-23T14:05:29acme.sh[Fri Oct 23 14:05:29 CEST 2026] Successfully removed
2026-10-23T14:05:29acme.sh[Fri Oct 23 14:05:29 CEST 2026] Removing TXT record.
2026-10-23T14:05:28acme.sh[Fri Oct 23 14:05:28 CEST 2026] Removing txt: hU-BQS-KMdTmLW65jKr9CDKj1kwxkgppUNPnmAgB3h4 for domain: _acme-challenge.hq.<redacted>.nl
2026-10-23T14:05:28acme.sh[Fri Oct 23 14:05:28 CEST 2026] Removing DNS records.
2026-10-23T14:05:28acme.sh[Fri Oct 23 14:05:28 CEST 2026] Success
2026-10-23T14:05:25acme.sh[Fri Oct 23 14:05:25 CEST 2026] Pending. The CA is processing your order, please wait. (1/30)
2026-10-23T14:05:25acme.sh[Fri Oct 23 14:05:25 CEST 2026] Verifying: *.hq.<redacted>.nl
2026-10-23T14:00:25acme.sh[Fri Oct 23 14:00:25 CEST 2026] Sleeping for 300 seconds to wait for the the TXT records to take effect
2026-10-23T14:00:25acme.sh[Fri Oct 23 14:00:25 CEST 2026] The TXT record has been successfully added.
2026-10-23T14:00:24acme.sh[Fri Oct 23 14:00:24 CEST 2026] Creating TXT record.
2026-10-23T14:00:23acme.sh[Fri Oct 23 14:00:23 CEST 2026] Adding TXT value: hU-BQS-KMdTmLW65jKr9CDKj1kwxkgppUNPnmAgB3h4 for domain: _acme-challenge.hq.<redacted>.nl
2026-10-23T14:00:23acme.sh[Fri Oct 23 14:00:23 CEST 2026] Getting webroot for domain='*.hq.<redacted>.nl'
2026-10-23T14:00:21acme.sh[Fri Oct 23 14:00:21 CEST 2026] Single domain='*.hq.<redacted>.nl'
2026-10-23T14:00:21acme.sh[Fri Oct 23 14:00:21 CEST 2026] Using CA: https://acme-v02.api.letsencrypt.org/directory
"