acmesh-official / acme.sh

A pure Unix shell script implementing ACME client protocol
https://acme.sh
GNU General Public License v3.0
39.37k stars 4.97k forks source link

Acme DNS can issue only 1 subdomain #4221

Open rizaemet opened 2 years ago

rizaemet commented 2 years ago

Hello,

Acme dns works fine for a subdomain but fails when multiple subdomains are requested.

Steps to reproduce

Just try issue with more than 1 subdomain. Interactively acme.sh prompts me to enter a CNAME record. I add the CNAME record to my DNS Server and then press Enter. It continues to work after I press enter but it does not prompt me to enter CNAME records for other subdomains. I guess that's why the subdomain validation step fails.

acme.sh  --issue --dns dns_acmedns -d 1.cbu.edu.tr -d 2.cbu.edu.tr -d 3.cbu.edu.tr

Command Output

acme.sh  --issue --dns dns_acmedns -d 1.cbu.edu.tr -d 2.cbu.edu.tr -d 3.cbu.edu.tr

[Thu 04 Aug 2022 10:34:52 AM +03] Using CA: https://acme.zerossl.com/v2/DV90
[Thu 04 Aug 2022 10:34:52 AM +03] Creating domain key
[Thu 04 Aug 2022 10:34:52 AM +03] The domain key is here: /root/.acme.sh/1.cbu.edu.tr/1.cbu.edu.tr.key
[Thu 04 Aug 2022 10:34:52 AM +03] Multi domain='DNS:1.cbu.edu.tr,DNS:2.cbu.edu.tr,DNS:3.cbu.edu.tr'
[Thu 04 Aug 2022 10:34:52 AM +03] Getting domain auth token for each domain
[Thu 04 Aug 2022 10:35:28 AM +03] Getting webroot for domain='1.cbu.edu.tr'
[Thu 04 Aug 2022 10:35:28 AM +03] Getting webroot for domain='2.cbu.edu.tr'
[Thu 04 Aug 2022 10:35:28 AM +03] Getting webroot for domain='3.cbu.edu.tr'
[Thu 04 Aug 2022 10:35:28 AM +03] Adding txt value: 1d0VxkppIHK5xlfki9wNAgBwnPE1r8gia6_V65165mk for domain:  _acme-challenge.1.cbu.edu.tr
[Thu 04 Aug 2022 10:35:28 AM +03] Using acme-dns
[Thu 04 Aug 2022 10:35:29 AM +03] ##########################################################
[Thu 04 Aug 2022 10:35:29 AM +03] # Create _acme-challenge.1.cbu.edu.tr CNAME 4eacfe53-b1c1-472d-853a-7521eff87fbc.auth.acme-dns.io DNS entry #
[Thu 04 Aug 2022 10:35:29 AM +03] ##########################################################
[Thu 04 Aug 2022 10:35:29 AM +03] Press enter to continue...

[Thu 04 Aug 2022 10:36:13 AM +03] The txt record is added: Success.
[Thu 04 Aug 2022 10:36:13 AM +03] Adding txt value: Hi-FYKyf6ummP2B9VXZ3BXc44sOfGsj4R5e_rWljB3s for domain:  _acme-challenge.2.cbu.edu.tr
[Thu 04 Aug 2022 10:36:13 AM +03] Using acme-dns
[Thu 04 Aug 2022 10:36:14 AM +03] The txt record is added: Success.
[Thu 04 Aug 2022 10:36:14 AM +03] Adding txt value: pxhrydstZLOV9I3dMtIRotTIDogXxey3igPOKhJ2hPg for domain:  _acme-challenge.3.cbu.edu.tr
[Thu 04 Aug 2022 10:36:14 AM +03] Using acme-dns
[Thu 04 Aug 2022 10:36:15 AM +03] The txt record is added: Success.
[Thu 04 Aug 2022 10:36:15 AM +03] Let's check each DNS record now. Sleep 20 seconds first.
[Thu 04 Aug 2022 10:36:36 AM +03] You can use '--dnssleep' to disable public dns checks.
[Thu 04 Aug 2022 10:36:36 AM +03] See: https://github.com/acmesh-official/acme.sh/wiki/dnscheck
[Thu 04 Aug 2022 10:36:36 AM +03] Checking 1.cbu.edu.tr for _acme-challenge.1.cbu.edu.tr
[Thu 04 Aug 2022 10:36:37 AM +03] Not valid yet, let's wait 10 seconds and check next one.
[Thu 04 Aug 2022 10:36:49 AM +03] Checking 2.cbu.edu.tr for _acme-challenge.2.cbu.edu.tr
[Thu 04 Aug 2022 10:36:49 AM +03] Not valid yet, let's wait 10 seconds and check next one.
[Thu 04 Aug 2022 10:37:01 AM +03] Checking 3.cbu.edu.tr for _acme-challenge.3.cbu.edu.tr
[Thu 04 Aug 2022 10:37:01 AM +03] Not valid yet, let's wait 10 seconds and check next one.
[Thu 04 Aug 2022 10:37:13 AM +03] Let's wait 10 seconds and check again.
[Thu 04 Aug 2022 10:37:24 AM +03] You can use '--dnssleep' to disable public dns checks.
[Thu 04 Aug 2022 10:37:24 AM +03] See: https://github.com/acmesh-official/acme.sh/wiki/dnscheck
[Thu 04 Aug 2022 10:37:24 AM +03] Checking 1.cbu.edu.tr for _acme-challenge.1.cbu.edu.tr
[Thu 04 Aug 2022 10:37:25 AM +03] Not valid yet, let's wait 10 seconds and check next one.
^C
This checking cycle never ends.

Debug Log

acme.sh  --issue --dns dns_acmedns -d 1.cbu.edu.tr -d 2.cbu.edu.tr -d 3.cbu.edu.tr --debug 2
[Thu 04 Aug 2022 12:27:37 PM +03] Lets find script dir.
[Thu 04 Aug 2022 12:27:37 PM +03] _SCRIPT_='/root/.acme.sh/acme.sh'
[Thu 04 Aug 2022 12:27:37 PM +03] _script='/root/.acme.sh/acme.sh'
[Thu 04 Aug 2022 12:27:37 PM +03] _script_home='/root/.acme.sh'
[Thu 04 Aug 2022 12:27:37 PM +03] Using config home:/root/.acme.sh
[Thu 04 Aug 2022 12:27:37 PM +03] LE_WORKING_DIR='/root/.acme.sh'
https://github.com/acmesh-official/acme.sh
v3.0.5
[Thu 04 Aug 2022 12:27:37 PM +03] Running cmd: issue
[Thu 04 Aug 2022 12:27:37 PM +03] _main_domain='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:37 PM +03] _alt_domains='2.cbu.edu.tr,3.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:37 PM +03] Using config home:/root/.acme.sh
[Thu 04 Aug 2022 12:27:37 PM +03] default_acme_server
[Thu 04 Aug 2022 12:27:38 PM +03] ACME_DIRECTORY='https://acme.zerossl.com/v2/DV90'
[Thu 04 Aug 2022 12:27:38 PM +03] _ACME_SERVER_HOST='acme.zerossl.com'
[Thu 04 Aug 2022 12:27:38 PM +03] _ACME_SERVER_PATH='v2/DV90'
[Thu 04 Aug 2022 12:27:38 PM +03] DOMAIN_PATH='/root/.acme.sh/1.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:38 PM +03] 'dns_acmedns' does not contain 'dns'
[Thu 04 Aug 2022 12:27:38 PM +03] Using ACME_DIRECTORY: https://acme.zerossl.com/v2/DV90
[Thu 04 Aug 2022 12:27:38 PM +03] _init api for server: https://acme.zerossl.com/v2/DV90
[Thu 04 Aug 2022 12:27:38 PM +03] GET
[Thu 04 Aug 2022 12:27:38 PM +03] url='https://acme.zerossl.com/v2/DV90'
[Thu 04 Aug 2022 12:27:38 PM +03] timeout=
[Thu 04 Aug 2022 12:27:38 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.JZ1qswRE2x  -g '
[Thu 04 Aug 2022 12:27:47 PM +03] ret='0'
[Thu 04 Aug 2022 12:27:47 PM +03] response='{
  "newNonce": "https://acme.zerossl.com/v2/DV90/newNonce",
  "newAccount": "https://acme.zerossl.com/v2/DV90/newAccount",
  "newOrder": "https://acme.zerossl.com/v2/DV90/newOrder",
  "revokeCert": "https://acme.zerossl.com/v2/DV90/revokeCert",
  "keyChange": "https://acme.zerossl.com/v2/DV90/keyChange",
  "meta": {
    "termsOfService": "https://secure.trust-provider.com/repository/docs/Legacy/20201020_Certificate_Subscriber_Agreement_v_2_4_click.pdf",
    "website": "https://zerossl.com",
    "caaIdentities": ["sectigo.com", "trust-provider.com", "usertrust.com", "comodoca.com", "comodo.com"],
    "externalAccountRequired": true
  }
}'
[Thu 04 Aug 2022 12:27:47 PM +03] ACME_KEY_CHANGE='https://acme.zerossl.com/v2/DV90/keyChange'
[Thu 04 Aug 2022 12:27:47 PM +03] ACME_NEW_AUTHZ
[Thu 04 Aug 2022 12:27:47 PM +03] ACME_NEW_ORDER='https://acme.zerossl.com/v2/DV90/newOrder'
[Thu 04 Aug 2022 12:27:47 PM +03] ACME_NEW_ACCOUNT='https://acme.zerossl.com/v2/DV90/newAccount'
[Thu 04 Aug 2022 12:27:47 PM +03] ACME_REVOKE_CERT='https://acme.zerossl.com/v2/DV90/revokeCert'
[Thu 04 Aug 2022 12:27:47 PM +03] ACME_AGREEMENT='https://secure.trust-provider.com/repository/docs/Legacy/20201020_Certificate_Subscriber_Agreement_v_2_4_click.pdf'
[Thu 04 Aug 2022 12:27:48 PM +03] ACME_NEW_NONCE='https://acme.zerossl.com/v2/DV90/newNonce'
[Thu 04 Aug 2022 12:27:48 PM +03] Using CA: https://acme.zerossl.com/v2/DV90
[Thu 04 Aug 2022 12:27:48 PM +03] _on_before_issue
[Thu 04 Aug 2022 12:27:48 PM +03] _chk_main_domain='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _chk_alt_domains='2.cbu.edu.tr,3.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] 'dns_acmedns' does not contain 'no'
[Thu 04 Aug 2022 12:27:48 PM +03] Le_LocalAddress
[Thu 04 Aug 2022 12:27:48 PM +03] d='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] Check for domain='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _currentRoot='dns_acmedns'
[Thu 04 Aug 2022 12:27:48 PM +03] d='2.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] Check for domain='2.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _currentRoot='dns_acmedns'
[Thu 04 Aug 2022 12:27:48 PM +03] d='3.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] Check for domain='3.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _currentRoot='dns_acmedns'
[Thu 04 Aug 2022 12:27:48 PM +03] d
[Thu 04 Aug 2022 12:27:48 PM +03] 'dns_acmedns' does not contain 'apache'
[Thu 04 Aug 2022 12:27:48 PM +03] _saved_account_key_hash='wroEZmX5bdXPXgAFWxyUaQqjjtSx2XAoi3GMT3i1MJo='
[Thu 04 Aug 2022 12:27:48 PM +03] _saved_account_key_hash is not changed, skip register account.
[Thu 04 Aug 2022 12:27:48 PM +03] Read key length:2048
[Thu 04 Aug 2022 12:27:48 PM +03] Creating domain key
[Thu 04 Aug 2022 12:27:48 PM +03] Using config home:/root/.acme.sh
[Thu 04 Aug 2022 12:27:48 PM +03] ACME_DIRECTORY='https://acme.zerossl.com/v2/DV90'
[Thu 04 Aug 2022 12:27:48 PM +03] _ACME_SERVER_HOST='acme.zerossl.com'
[Thu 04 Aug 2022 12:27:48 PM +03] _ACME_SERVER_PATH='v2/DV90'
[Thu 04 Aug 2022 12:27:48 PM +03] _createkey for file:/root/.acme.sh/1.cbu.edu.tr/1.cbu.edu.tr.key
[Thu 04 Aug 2022 12:27:48 PM +03] Use length 2048
[Thu 04 Aug 2022 12:27:48 PM +03] Using RSA: 2048
[Thu 04 Aug 2022 12:27:48 PM +03] The domain key is here: /root/.acme.sh/1.cbu.edu.tr/1.cbu.edu.tr.key
[Thu 04 Aug 2022 12:27:48 PM +03] _createcsr
[Thu 04 Aug 2022 12:27:48 PM +03] domain='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] domainlist='2.cbu.edu.tr,3.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] csrkey='/root/.acme.sh/1.cbu.edu.tr/1.cbu.edu.tr.key'
[Thu 04 Aug 2022 12:27:48 PM +03] csr='/root/.acme.sh/1.cbu.edu.tr/1.cbu.edu.tr.csr'
[Thu 04 Aug 2022 12:27:48 PM +03] csrconf='/root/.acme.sh/1.cbu.edu.tr/1.cbu.edu.tr.csr.conf'
[Thu 04 Aug 2022 12:27:48 PM +03] _is_idn_d='2.cbu.edu.tr,3.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _idn_temp
[Thu 04 Aug 2022 12:27:48 PM +03] domainlist='2.cbu.edu.tr,3.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='1'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='cbu'
[Thu 04 Aug 2022 12:27:48 PM +03] _is_idn_d='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _idn_temp
[Thu 04 Aug 2022 12:27:48 PM +03] seg='2'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='cbu'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='3'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='cbu'
[Thu 04 Aug 2022 12:27:48 PM +03] Multi domain='DNS:1.cbu.edu.tr,DNS:2.cbu.edu.tr,DNS:3.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _is_idn_d='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _idn_temp
[Thu 04 Aug 2022 12:27:48 PM +03] _csr_cn='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='1'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='cbu'
[Thu 04 Aug 2022 12:27:48 PM +03] Getting domain auth token for each domain
[Thu 04 Aug 2022 12:27:48 PM +03] seg='1'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='cbu'
[Thu 04 Aug 2022 12:27:48 PM +03] _is_idn_d='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _idn_temp
[Thu 04 Aug 2022 12:27:48 PM +03] d='2.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='2'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='cbu'
[Thu 04 Aug 2022 12:27:48 PM +03] _is_idn_d='2.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _idn_temp
[Thu 04 Aug 2022 12:27:48 PM +03] d='3.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='3'
[Thu 04 Aug 2022 12:27:48 PM +03] seg='cbu'
[Thu 04 Aug 2022 12:27:48 PM +03] _is_idn_d='3.cbu.edu.tr'
[Thu 04 Aug 2022 12:27:48 PM +03] _idn_temp
[Thu 04 Aug 2022 12:27:48 PM +03] d
[Thu 04 Aug 2022 12:27:48 PM +03] _identifiers='{"type":"dns","value":"1.cbu.edu.tr"},{"type":"dns","value":"2.cbu.edu.tr"},{"type":"dns","value":"3.cbu.edu.tr"}'
[Thu 04 Aug 2022 12:27:48 PM +03] _notBefore
[Thu 04 Aug 2022 12:27:48 PM +03] _notAfter
[Thu 04 Aug 2022 12:27:48 PM +03] url='https://acme.zerossl.com/v2/DV90/newOrder'
[Thu 04 Aug 2022 12:27:48 PM +03] payload='{"identifiers": [{"type":"dns","value":"1.cbu.edu.tr"},{"type":"dns","value":"2.cbu.edu.tr"},{"type":"dns","value":"3.cbu.edu.tr"}]}'
[Thu 04 Aug 2022 12:27:48 PM +03] RSA key
[Thu 04 Aug 2022 12:27:48 PM +03] Get nonce with HEAD. ACME_NEW_NONCE='https://acme.zerossl.com/v2/DV90/newNonce'
[Thu 04 Aug 2022 12:27:48 PM +03] HEAD
[Thu 04 Aug 2022 12:27:48 PM +03] _post_url='https://acme.zerossl.com/v2/DV90/newNonce'
[Thu 04 Aug 2022 12:27:48 PM +03] body
[Thu 04 Aug 2022 12:27:48 PM +03] _postContentType='application/jose+json'
[Thu 04 Aug 2022 12:27:48 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g  -I  '
[Thu 04 Aug 2022 12:27:58 PM +03] _ret='0'
[Thu 04 Aug 2022 12:27:58 PM +03] _headers='HTTP/2 200
server: nginx
date: Thu, 04 Aug 2022 09:27:58 GMT
content-type: application/octet-stream
replay-nonce: nmyLYVXNcCIAFGJGcr6F-47g4sRcazYrawrHNH6cdFo
cache-control: max-age=-1
access-control-allow-origin: *
link: <https://acme.zerossl.com/v2/DV90>;rel="index"
strict-transport-security: max-age=15552000
'
[Thu 04 Aug 2022 12:27:58 PM +03] _CACHED_NONCE='nmyLYVXNcCIAFGJGcr6F-47g4sRcazYrawrHNH6cdFo'
[Thu 04 Aug 2022 12:27:58 PM +03] nonce='nmyLYVXNcCIAFGJGcr6F-47g4sRcazYrawrHNH6cdFo'
[Thu 04 Aug 2022 12:27:58 PM +03] POST
[Thu 04 Aug 2022 12:27:58 PM +03] _post_url='https://acme.zerossl.com/v2/DV90/newOrder'
[Thu 04 Aug 2022 12:27:58 PM +03] body='{"protected": "eyJub25jZSI6ICJubXlMWVZYTmNDSUFGR0pHY3I2Ri00N2c0c1JjYXpZcmF3ckhOSDZjZEZvIiwgInVybCI6ICJodHRwczovL2FjbWUuemVyb3NzbC5jb20vdjIvRFY5MC9uZXdPcmRlciIsICJhbGciOiAiUlMyNTYiLCAia2lkIjogImh0dHBzOi8vYWNtZS56ZXJvc3NsLmNvbS92Mi9EVjkwL2FjY291bnQvMmpLd2VzOG90Z2I3Y3NrLUNNNTV6QSJ9", "payload": "eyJpZGVudGlmaWVycyI6IFt7InR5cGUiOiJkbnMiLCJ2YWx1ZSI6IjEuY2J1LmVkdS50ciJ9LHsidHlwZSI6ImRucyIsInZhbHVlIjoiMi5jYnUuZWR1LnRyIn0seyJ0eXBlIjoiZG5zIiwidmFsdWUiOiIzLmNidS5lZHUudHIifV19", "signature": "id1oMQDNisCU4CVEJeyG05xdDTd5JjCXWngF1eguI6CPZIdqNReNSfSrOcQiE1S5YR2LmXwAaKMkAnncpV8Ok8uqq5vuWibMtVxYr8eM-_ixz_EIdVSkxb7BNP5LfzUyl1461JRayjD4Lck50V35UywEanmmSMMW3m9VWMf5TyKX1bBQ0W8tfgSivCxYHqbk6nloqhrf8eNq4xlRP7AUQIimYvkqZVuAzlOu4Pqm5vav7gh1yM5mOd_zvOHCnXl2s0RaxGVLbbKmV1o7pj1xZ_lvYwQerPyzOvIinwFqaG8qVnB3IDirrt6CIrhKFlUcchxRzCQ7ysezibx0phVBeQ"}'
[Thu 04 Aug 2022 12:27:58 PM +03] _postContentType='application/jose+json'
[Thu 04 Aug 2022 12:27:58 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:27:58 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:28:09 PM +03] _ret='0'
[Thu 04 Aug 2022 12:28:09 PM +03] responseHeaders='HTTP/2 201
server: nginx
date: Thu, 04 Aug 2022 09:28:09 GMT
content-type: application/json
content-length: 478
status:
replay-nonce: 3ZPm74Po-ApM6xCPPKKVgtM1cysQUSLXg2k9_UpL-v4
cache-control: max-age=0, no-cache, no-store
access-control-allow-origin: *
location: https://acme.zerossl.com/v2/DV90/order/MBP0p0WUGbT83cHbO9polg
cache-control: max-age=-1
strict-transport-security: max-age=15552000
'
[Thu 04 Aug 2022 12:28:09 PM +03] code='201'
[Thu 04 Aug 2022 12:28:09 PM +03] original='{"status":"pending","expires":"2022-11-02T09:28:09Z","identifiers":[{"type":"dns","value":"1.cbu.edu.tr"},{"type":"dns","value":"2.cbu.edu.tr"},{"type":"dns","value":"3.cbu.edu.tr"}],"authorizations":["https://acme.zerossl.com/v2/DV90/authz/hr_W3jvzGmwajirRS97sWA","https://acme.zerossl.com/v2/DV90/authz/ZnH07IUXBV2j0QiZIpaCPg","https://acme.zerossl.com/v2/DV90/authz/2YL17tLE9NI3_roqskKTbg"],"finalize":"https://acme.zerossl.com/v2/DV90/order/MBP0p0WUGbT83cHbO9polg/finalize"}'
[Thu 04 Aug 2022 12:28:09 PM +03] response='{"status":"pending","expires":"2022-11-02T09:28:09Z","identifiers":[{"type":"dns","value":"1.cbu.edu.tr"},{"type":"dns","value":"2.cbu.edu.tr"},{"type":"dns","value":"3.cbu.edu.tr"}],"authorizations":["https://acme.zerossl.com/v2/DV90/authz/hr_W3jvzGmwajirRS97sWA","https://acme.zerossl.com/v2/DV90/authz/ZnH07IUXBV2j0QiZIpaCPg","https://acme.zerossl.com/v2/DV90/authz/2YL17tLE9NI3_roqskKTbg"],"finalize":"https://acme.zerossl.com/v2/DV90/order/MBP0p0WUGbT83cHbO9polg/finalize"}'
[Thu 04 Aug 2022 12:28:09 PM +03] Le_LinkOrder='https://acme.zerossl.com/v2/DV90/order/MBP0p0WUGbT83cHbO9polg'
[Thu 04 Aug 2022 12:28:09 PM +03] Le_OrderFinalize='https://acme.zerossl.com/v2/DV90/order/MBP0p0WUGbT83cHbO9polg/finalize'
[Thu 04 Aug 2022 12:28:09 PM +03] _authorizations_seg='https://acme.zerossl.com/v2/DV90/authz/hr_W3jvzGmwajirRS97sWA,https://acme.zerossl.com/v2/DV90/authz/ZnH07IUXBV2j0QiZIpaCPg,https://acme.zerossl.com/v2/DV90/authz/2YL17tLE9NI3_roqskKTbg'
[Thu 04 Aug 2022 12:28:09 PM +03] _authz_url='https://acme.zerossl.com/v2/DV90/authz/hr_W3jvzGmwajirRS97sWA'
[Thu 04 Aug 2022 12:28:09 PM +03] url='https://acme.zerossl.com/v2/DV90/authz/hr_W3jvzGmwajirRS97sWA'
[Thu 04 Aug 2022 12:28:09 PM +03] payload
[Thu 04 Aug 2022 12:28:09 PM +03] Use cached jwk for file: /root/.acme.sh/ca/acme.zerossl.com/v2/DV90/account.key
[Thu 04 Aug 2022 12:28:09 PM +03] Use _CACHED_NONCE='3ZPm74Po-ApM6xCPPKKVgtM1cysQUSLXg2k9_UpL-v4'
[Thu 04 Aug 2022 12:28:09 PM +03] nonce='3ZPm74Po-ApM6xCPPKKVgtM1cysQUSLXg2k9_UpL-v4'
[Thu 04 Aug 2022 12:28:10 PM +03] POST
[Thu 04 Aug 2022 12:28:10 PM +03] _post_url='https://acme.zerossl.com/v2/DV90/authz/hr_W3jvzGmwajirRS97sWA'
[Thu 04 Aug 2022 12:28:10 PM +03] body='{"protected": "eyJub25jZSI6ICIzWlBtNzRQby1BcE02eENQUEtLVmd0TTFjeXNRVVNMWGcyazlfVXBMLXY0IiwgInVybCI6ICJodHRwczovL2FjbWUuemVyb3NzbC5jb20vdjIvRFY5MC9hdXRoei9ocl9XM2p2ekdtd2FqaXJSUzk3c1dBIiwgImFsZyI6ICJSUzI1NiIsICJraWQiOiAiaHR0cHM6Ly9hY21lLnplcm9zc2wuY29tL3YyL0RWOTAvYWNjb3VudC8yakt3ZXM4b3RnYjdjc2stQ001NXpBIn0", "payload": "", "signature": "AgUMF4jxEmHBNyTE2cnQaQDCcCCGPXJ1EtHF4ZueCjJXZQb80Ufyrbi21qrbng11amcinyNbjUfignj6BeLcFpYNSnpUW4Fab_d2nOILTtyCImI-64oOxGgQbRSUZIbE80Q-UTOB-cwJdkiVYOBkqqIgDqCkC12_UedWA7daVRFozK9wpRGWQONwqCA1Ld89Iftr7uTJsttms6eIEkKDv7l6nNIj3ZXoDhL8Fg1WRAaJ3_V926F8FP1KmZqWFvABoqnYDN6ITQ5Z_WBUsQ2WzGMHhuYbFhsD6SVPfkRp6SmaTmfn2cqNx3GOQI6rGArwrUGTCRcvl8t4FNpRGVxnXA"}'
[Thu 04 Aug 2022 12:28:10 PM +03] _postContentType='application/jose+json'
[Thu 04 Aug 2022 12:28:10 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:28:10 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:28:20 PM +03] _ret='0'
[Thu 04 Aug 2022 12:28:20 PM +03] responseHeaders='HTTP/2 200
server: nginx
date: Thu, 04 Aug 2022 09:28:20 GMT
content-type: application/json
content-length: 442
replay-nonce: -lip-A6gzqnZkxc2ZP2jb6zBWSoA_FRvOr4kh_YYCR8
cache-control: max-age=-1
access-control-allow-origin: *
link: <https://acme.zerossl.com/v2/DV90>;rel="index"
retry-after: 5
strict-transport-security: max-age=15552000
'
[Thu 04 Aug 2022 12:28:20 PM +03] code='200'
[Thu 04 Aug 2022 12:28:20 PM +03] original='{"identifier":{"type":"dns","value":"1.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/52UH7OT2adbuvrjZPRAi9w","status":"pending","token":"yhOgz4UJPTDbDnkUon4a5s6ECuXYsmalLyShYjzae80"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/kr3d0iUZCY_2rZj_3wTq0w","status":"pending","token":"QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg"}]}'
[Thu 04 Aug 2022 12:28:20 PM +03] response='{"identifier":{"type":"dns","value":"1.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/52UH7OT2adbuvrjZPRAi9w","status":"pending","token":"yhOgz4UJPTDbDnkUon4a5s6ECuXYsmalLyShYjzae80"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/kr3d0iUZCY_2rZj_3wTq0w","status":"pending","token":"QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg"}]}'
[Thu 04 Aug 2022 12:28:20 PM +03] response='{"identifier":{"type":"dns","value":"1.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/52UH7OT2adbuvrjZPRAi9w","status":"pending","token":"yhOgz4UJPTDbDnkUon4a5s6ECuXYsmalLyShYjzae80"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/kr3d0iUZCY_2rZj_3wTq0w","status":"pending","token":"QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg"}]}'
[Thu 04 Aug 2022 12:28:20 PM +03] _d='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:20 PM +03] _authz_url='https://acme.zerossl.com/v2/DV90/authz/ZnH07IUXBV2j0QiZIpaCPg'
[Thu 04 Aug 2022 12:28:20 PM +03] url='https://acme.zerossl.com/v2/DV90/authz/ZnH07IUXBV2j0QiZIpaCPg'
[Thu 04 Aug 2022 12:28:20 PM +03] payload
[Thu 04 Aug 2022 12:28:20 PM +03] Use cached jwk for file: /root/.acme.sh/ca/acme.zerossl.com/v2/DV90/account.key
[Thu 04 Aug 2022 12:28:20 PM +03] Use _CACHED_NONCE='-lip-A6gzqnZkxc2ZP2jb6zBWSoA_FRvOr4kh_YYCR8'
[Thu 04 Aug 2022 12:28:20 PM +03] nonce='-lip-A6gzqnZkxc2ZP2jb6zBWSoA_FRvOr4kh_YYCR8'
[Thu 04 Aug 2022 12:28:20 PM +03] POST
[Thu 04 Aug 2022 12:28:20 PM +03] _post_url='https://acme.zerossl.com/v2/DV90/authz/ZnH07IUXBV2j0QiZIpaCPg'
[Thu 04 Aug 2022 12:28:20 PM +03] body='{"protected": "eyJub25jZSI6ICItbGlwLUE2Z3pxblpreGMyWlAyamI2ekJXU29BX0ZSdk9yNGtoX1lZQ1I4IiwgInVybCI6ICJodHRwczovL2FjbWUuemVyb3NzbC5jb20vdjIvRFY5MC9hdXRoei9abkgwN0lVWEJWMmowUWlaSXBhQ1BnIiwgImFsZyI6ICJSUzI1NiIsICJraWQiOiAiaHR0cHM6Ly9hY21lLnplcm9zc2wuY29tL3YyL0RWOTAvYWNjb3VudC8yakt3ZXM4b3RnYjdjc2stQ001NXpBIn0", "payload": "", "signature": "UNippQQeSU0NqJnVQXBl3ymURreYeh7t5NrO5bs71QCi1q3qUglj3knNabC_Qkcz2ffrHTpcgaWmn8p8ds-O5xEjS6SQe27sm56ur4tZr_IdypiQltB10dcX5M0hx9WH6yQr7QZD0UtrF3uVWk1Hk12cBwW79-TtmehBIkxeUKLdHV9jUHuCjhxDFuj1MYvga25MgQOQHx5XUI0Yq0Y20zGkJbdUx6Ih9hzZA5FeGTG-r54zCG4z6XJdTIPT7BgUot9imacKWmAB4cJzeWntKOiz0bQ5jFiDv5JCx2caUhiqjbn--inNHM0sRJB9kv5yVXY5SXpO6aEuTaMI1yHv9g"}'
[Thu 04 Aug 2022 12:28:20 PM +03] _postContentType='application/jose+json'
[Thu 04 Aug 2022 12:28:20 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:28:20 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:28:29 PM +03] _ret='0'
[Thu 04 Aug 2022 12:28:29 PM +03] responseHeaders='HTTP/2 200
server: nginx
date: Thu, 04 Aug 2022 09:28:29 GMT
content-type: application/json
content-length: 442
replay-nonce: ybv3TbsTpSstO0B3sP_3-Zey6i7Rq9d2Wcu_ZuqKkps
cache-control: max-age=-1
access-control-allow-origin: *
link: <https://acme.zerossl.com/v2/DV90>;rel="index"
retry-after: 5
strict-transport-security: max-age=15552000
'
[Thu 04 Aug 2022 12:28:29 PM +03] code='200'
[Thu 04 Aug 2022 12:28:29 PM +03] original='{"identifier":{"type":"dns","value":"2.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/m86-YIH-Q0bg8r0w9WcJyA","status":"pending","token":"gaB_11k0QPLTE3KtH49FzihiXPAsNiqPFLySFg_A2ys"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/DASmkZ1APMATNqBJoTsPpQ","status":"pending","token":"5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM"}]}'
[Thu 04 Aug 2022 12:28:29 PM +03] response='{"identifier":{"type":"dns","value":"2.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/m86-YIH-Q0bg8r0w9WcJyA","status":"pending","token":"gaB_11k0QPLTE3KtH49FzihiXPAsNiqPFLySFg_A2ys"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/DASmkZ1APMATNqBJoTsPpQ","status":"pending","token":"5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM"}]}'
[Thu 04 Aug 2022 12:28:29 PM +03] response='{"identifier":{"type":"dns","value":"2.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/m86-YIH-Q0bg8r0w9WcJyA","status":"pending","token":"gaB_11k0QPLTE3KtH49FzihiXPAsNiqPFLySFg_A2ys"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/DASmkZ1APMATNqBJoTsPpQ","status":"pending","token":"5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM"}]}'
[Thu 04 Aug 2022 12:28:29 PM +03] _d='2.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:29 PM +03] _authz_url='https://acme.zerossl.com/v2/DV90/authz/2YL17tLE9NI3_roqskKTbg'
[Thu 04 Aug 2022 12:28:29 PM +03] url='https://acme.zerossl.com/v2/DV90/authz/2YL17tLE9NI3_roqskKTbg'
[Thu 04 Aug 2022 12:28:29 PM +03] payload
[Thu 04 Aug 2022 12:28:29 PM +03] Use cached jwk for file: /root/.acme.sh/ca/acme.zerossl.com/v2/DV90/account.key
[Thu 04 Aug 2022 12:28:29 PM +03] Use _CACHED_NONCE='ybv3TbsTpSstO0B3sP_3-Zey6i7Rq9d2Wcu_ZuqKkps'
[Thu 04 Aug 2022 12:28:29 PM +03] nonce='ybv3TbsTpSstO0B3sP_3-Zey6i7Rq9d2Wcu_ZuqKkps'
[Thu 04 Aug 2022 12:28:29 PM +03] POST
[Thu 04 Aug 2022 12:28:29 PM +03] _post_url='https://acme.zerossl.com/v2/DV90/authz/2YL17tLE9NI3_roqskKTbg'
[Thu 04 Aug 2022 12:28:29 PM +03] body='{"protected": "eyJub25jZSI6ICJ5YnYzVGJzVHBTc3RPMEIzc1BfMy1aZXk2aTdScTlkMldjdV9adXFLa3BzIiwgInVybCI6ICJodHRwczovL2FjbWUuemVyb3NzbC5jb20vdjIvRFY5MC9hdXRoei8yWUwxN3RMRTlOSTNfcm9xc2tLVGJnIiwgImFsZyI6ICJSUzI1NiIsICJraWQiOiAiaHR0cHM6Ly9hY21lLnplcm9zc2wuY29tL3YyL0RWOTAvYWNjb3VudC8yakt3ZXM4b3RnYjdjc2stQ001NXpBIn0", "payload": "", "signature": "jkiX8VZj9azVQSOJ-VZc6p749IePFl_Tf22OG7f0TdL0xrLNjS0yGD8Ar9bD2DgFkO1EPmc_I0vUbj4_QU8z9aSgx20EMRBBx-xRGCP9z3sehPeB7o96GEE-IhYVghqzVdI_SjDHyCHGOP6v4jcuGknInbFRpRCsRxfVlWL6xNIE0fefm7Xe4NiB2YGZ4zTjlWaxDHi_QSQx4OUIiFlKVwQ_IOKYyA4IJ1jlvLWP0vYh3Yq7ZwpzfI73DVqTzrSHgYN1Vg_daD-idYhepCkmDs1eKzd74ae54Tj88kpSqzug8VRlGs-ABc1AFg_i1fnbk0GzLhotrLkqzV7q4BjEUw"}'
[Thu 04 Aug 2022 12:28:29 PM +03] _postContentType='application/jose+json'
[Thu 04 Aug 2022 12:28:29 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:28:29 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:28:44 PM +03] _ret='0'
[Thu 04 Aug 2022 12:28:44 PM +03] responseHeaders='HTTP/2 200
server: nginx
date: Thu, 04 Aug 2022 09:28:44 GMT
content-type: application/json
content-length: 442
replay-nonce: MRq05olRf3Y85PuNoDzW9K9BVJ1KeOFM5ZxUkHAgLHY
cache-control: max-age=-1
access-control-allow-origin: *
link: <https://acme.zerossl.com/v2/DV90>;rel="index"
retry-after: 5
strict-transport-security: max-age=15552000
'
[Thu 04 Aug 2022 12:28:44 PM +03] code='200'
[Thu 04 Aug 2022 12:28:44 PM +03] original='{"identifier":{"type":"dns","value":"3.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/CnlCDx-NTgEikyXce1eEMw","status":"pending","token":"eoRD3i_bCneek6nN0k_wNqp0diiJ2z7VN5aPeQyrYBY"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/ydssUP9p8nkYJqzbkHpMIA","status":"pending","token":"JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o"}]}'
[Thu 04 Aug 2022 12:28:44 PM +03] response='{"identifier":{"type":"dns","value":"3.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/CnlCDx-NTgEikyXce1eEMw","status":"pending","token":"eoRD3i_bCneek6nN0k_wNqp0diiJ2z7VN5aPeQyrYBY"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/ydssUP9p8nkYJqzbkHpMIA","status":"pending","token":"JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o"}]}'
[Thu 04 Aug 2022 12:28:44 PM +03] response='{"identifier":{"type":"dns","value":"3.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/CnlCDx-NTgEikyXce1eEMw","status":"pending","token":"eoRD3i_bCneek6nN0k_wNqp0diiJ2z7VN5aPeQyrYBY"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/ydssUP9p8nkYJqzbkHpMIA","status":"pending","token":"JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o"}]}'
[Thu 04 Aug 2022 12:28:44 PM +03] _d='3.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] _authorizations_map='3.cbu.edu.tr,{"identifier":{"type":"dns","value":"3.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/CnlCDx-NTgEikyXce1eEMw","status":"pending","token":"eoRD3i_bCneek6nN0k_wNqp0diiJ2z7VN5aPeQyrYBY"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/ydssUP9p8nkYJqzbkHpMIA","status":"pending","token":"JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o"}]}
2.cbu.edu.tr,{"identifier":{"type":"dns","value":"2.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/m86-YIH-Q0bg8r0w9WcJyA","status":"pending","token":"gaB_11k0QPLTE3KtH49FzihiXPAsNiqPFLySFg_A2ys"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/DASmkZ1APMATNqBJoTsPpQ","status":"pending","token":"5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM"}]}
1.cbu.edu.tr,{"identifier":{"type":"dns","value":"1.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/52UH7OT2adbuvrjZPRAi9w","status":"pending","token":"yhOgz4UJPTDbDnkUon4a5s6ECuXYsmalLyShYjzae80"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/kr3d0iUZCY_2rZj_3wTq0w","status":"pending","token":"QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg"}]}
'
[Thu 04 Aug 2022 12:28:44 PM +03] d='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] Getting webroot for domain='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] _w='dns_acmedns'
[Thu 04 Aug 2022 12:28:44 PM +03] _currentRoot='dns_acmedns'
[Thu 04 Aug 2022 12:28:44 PM +03] _is_idn_d='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] _idn_temp
[Thu 04 Aug 2022 12:28:44 PM +03] _candidates='1.cbu.edu.tr,{"identifier":{"type":"dns","value":"1.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/52UH7OT2adbuvrjZPRAi9w","status":"pending","token":"yhOgz4UJPTDbDnkUon4a5s6ECuXYsmalLyShYjzae80"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/kr3d0iUZCY_2rZj_3wTq0w","status":"pending","token":"QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg"}]}'
[Thu 04 Aug 2022 12:28:44 PM +03] response='{"identifier":{"type":"dns","value":"1.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/52UH7OT2adbuvrjZPRAi9w","status":"pending","token":"yhOgz4UJPTDbDnkUon4a5s6ECuXYsmalLyShYjzae80"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/kr3d0iUZCY_2rZj_3wTq0w","status":"pending","token":"QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg"}]}'
[Thu 04 Aug 2022 12:28:44 PM +03] entry='"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/kr3d0iUZCY_2rZj_3wTq0w","status":"pending","token":"QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg"'
[Thu 04 Aug 2022 12:28:44 PM +03] token='QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg'
[Thu 04 Aug 2022 12:28:44 PM +03] uri='https://acme.zerossl.com/v2/DV90/chall/kr3d0iUZCY_2rZj_3wTq0w'
[Thu 04 Aug 2022 12:28:44 PM +03] keyauthorization='QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg.9Rxim3hkLqgHCIyfBpdridw2udnkTGk7EBWNOG5czIc'
[Thu 04 Aug 2022 12:28:44 PM +03] dvlist='1.cbu.edu.tr#QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg.9Rxim3hkLqgHCIyfBpdridw2udnkTGk7EBWNOG5czIc#https://acme.zerossl.com/v2/DV90/chall/kr3d0iUZCY_2rZj_3wTq0w#dns-01#dns_acmedns'
[Thu 04 Aug 2022 12:28:44 PM +03] d='2.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] Getting webroot for domain='2.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] _w='dns_acmedns'
[Thu 04 Aug 2022 12:28:44 PM +03] _currentRoot='dns_acmedns'
[Thu 04 Aug 2022 12:28:44 PM +03] _is_idn_d='2.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] _idn_temp
[Thu 04 Aug 2022 12:28:44 PM +03] _candidates='2.cbu.edu.tr,{"identifier":{"type":"dns","value":"2.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/m86-YIH-Q0bg8r0w9WcJyA","status":"pending","token":"gaB_11k0QPLTE3KtH49FzihiXPAsNiqPFLySFg_A2ys"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/DASmkZ1APMATNqBJoTsPpQ","status":"pending","token":"5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM"}]}'
[Thu 04 Aug 2022 12:28:44 PM +03] response='{"identifier":{"type":"dns","value":"2.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/m86-YIH-Q0bg8r0w9WcJyA","status":"pending","token":"gaB_11k0QPLTE3KtH49FzihiXPAsNiqPFLySFg_A2ys"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/DASmkZ1APMATNqBJoTsPpQ","status":"pending","token":"5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM"}]}'
[Thu 04 Aug 2022 12:28:44 PM +03] entry='"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/DASmkZ1APMATNqBJoTsPpQ","status":"pending","token":"5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM"'
[Thu 04 Aug 2022 12:28:44 PM +03] token='5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM'
[Thu 04 Aug 2022 12:28:44 PM +03] uri='https://acme.zerossl.com/v2/DV90/chall/DASmkZ1APMATNqBJoTsPpQ'
[Thu 04 Aug 2022 12:28:44 PM +03] keyauthorization='5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM.9Rxim3hkLqgHCIyfBpdridw2udnkTGk7EBWNOG5czIc'
[Thu 04 Aug 2022 12:28:44 PM +03] dvlist='2.cbu.edu.tr#5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM.9Rxim3hkLqgHCIyfBpdridw2udnkTGk7EBWNOG5czIc#https://acme.zerossl.com/v2/DV90/chall/DASmkZ1APMATNqBJoTsPpQ#dns-01#dns_acmedns'
[Thu 04 Aug 2022 12:28:44 PM +03] d='3.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] Getting webroot for domain='3.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] _w='dns_acmedns'
[Thu 04 Aug 2022 12:28:44 PM +03] _currentRoot='dns_acmedns'
[Thu 04 Aug 2022 12:28:44 PM +03] _is_idn_d='3.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] _idn_temp
[Thu 04 Aug 2022 12:28:44 PM +03] _candidates='3.cbu.edu.tr,{"identifier":{"type":"dns","value":"3.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/CnlCDx-NTgEikyXce1eEMw","status":"pending","token":"eoRD3i_bCneek6nN0k_wNqp0diiJ2z7VN5aPeQyrYBY"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/ydssUP9p8nkYJqzbkHpMIA","status":"pending","token":"JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o"}]}'
[Thu 04 Aug 2022 12:28:44 PM +03] response='{"identifier":{"type":"dns","value":"3.cbu.edu.tr"},"status":"pending","expires":"2022-09-03T09:28:09Z","challenges":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/CnlCDx-NTgEikyXce1eEMw","status":"pending","token":"eoRD3i_bCneek6nN0k_wNqp0diiJ2z7VN5aPeQyrYBY"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/ydssUP9p8nkYJqzbkHpMIA","status":"pending","token":"JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o"}]}'
[Thu 04 Aug 2022 12:28:44 PM +03] entry='"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/ydssUP9p8nkYJqzbkHpMIA","status":"pending","token":"JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o"'
[Thu 04 Aug 2022 12:28:44 PM +03] token='JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o'
[Thu 04 Aug 2022 12:28:44 PM +03] uri='https://acme.zerossl.com/v2/DV90/chall/ydssUP9p8nkYJqzbkHpMIA'
[Thu 04 Aug 2022 12:28:44 PM +03] keyauthorization='JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o.9Rxim3hkLqgHCIyfBpdridw2udnkTGk7EBWNOG5czIc'
[Thu 04 Aug 2022 12:28:44 PM +03] dvlist='3.cbu.edu.tr#JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o.9Rxim3hkLqgHCIyfBpdridw2udnkTGk7EBWNOG5czIc#https://acme.zerossl.com/v2/DV90/chall/ydssUP9p8nkYJqzbkHpMIA#dns-01#dns_acmedns'
[Thu 04 Aug 2022 12:28:44 PM +03] d
[Thu 04 Aug 2022 12:28:44 PM +03] vlist='1.cbu.edu.tr#QoKOrzkmH9pXQk6jq8FC6uUV6DAz2URoQAGai544-Rg.9Rxim3hkLqgHCIyfBpdridw2udnkTGk7EBWNOG5czIc#https://acme.zerossl.com/v2/DV90/chall/kr3d0iUZCY_2rZj_3wTq0w#dns-01#dns_acmedns,2.cbu.edu.tr#5rz57a9FMQdScqe7BGag-kx4geOW4eP1SeD4nhOBrVM.9Rxim3hkLqgHCIyfBpdridw2udnkTGk7EBWNOG5czIc#https://acme.zerossl.com/v2/DV90/chall/DASmkZ1APMATNqBJoTsPpQ#dns-01#dns_acmedns,3.cbu.edu.tr#JoF9NiOQ56iSKv6HvmermwVUODntgeK7NxmGS5hXw0o.9Rxim3hkLqgHCIyfBpdridw2udnkTGk7EBWNOG5czIc#https://acme.zerossl.com/v2/DV90/chall/ydssUP9p8nkYJqzbkHpMIA#dns-01#dns_acmedns,'
[Thu 04 Aug 2022 12:28:44 PM +03] d='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] _d_alias
[Thu 04 Aug 2022 12:28:44 PM +03] txtdomain='_acme-challenge.1.cbu.edu.tr'
[Thu 04 Aug 2022 12:28:44 PM +03] txt='RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU'
[Thu 04 Aug 2022 12:28:44 PM +03] d_api='/root/.acme.sh/dnsapi/dns_acmedns.sh'
[Thu 04 Aug 2022 12:28:44 PM +03] dns_entry='1.cbu.edu.tr,_acme-challenge.1.cbu.edu.tr,,dns_acmedns,RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU,/root/.acme.sh/dnsapi/dns_acmedns.sh'
[Thu 04 Aug 2022 12:28:44 PM +03] Found domain api file: /root/.acme.sh/dnsapi/dns_acmedns.sh
[Thu 04 Aug 2022 12:28:44 PM +03] Adding txt value: RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU for domain:  _acme-challenge.1.cbu.edu.tr
[Thu 04 Aug 2022 12:28:44 PM +03] Using acme-dns
[Thu 04 Aug 2022 12:28:44 PM +03] fulldomain _acme-challenge.1.cbu.edu.tr
[Thu 04 Aug 2022 12:28:44 PM +03] txtvalue RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU
[Thu 04 Aug 2022 12:28:44 PM +03] POST
[Thu 04 Aug 2022 12:28:44 PM +03] _post_url='https://auth.acme-dns.io/register'
[Thu 04 Aug 2022 12:28:44 PM +03] body
[Thu 04 Aug 2022 12:28:44 PM +03] _postContentType
[Thu 04 Aug 2022 12:28:44 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:28:44 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:28:45 PM +03] _ret='0'
[Thu 04 Aug 2022 12:28:45 PM +03] response='{"username":"91fbd7d3-a866-4434-aa22-8965eae65074","password":"qiSojyISxuaVdXrna1j0pf_CuWUbsLqAuWNal7ZA","fulldomain":"2304239e-b1c8-431b-bf01-6e5222f56bc2.auth.acme-dns.io","subdomain":"2304239e-b1c8-431b-bf01-6e5222f56bc2","allowfrom":[]}'
[Thu 04 Aug 2022 12:28:45 PM +03] received username: 91fbd7d3-a866-4434-aa22-8965eae65074
[Thu 04 Aug 2022 12:28:45 PM +03] received password: qiSojyISxuaVdXrna1j0pf_CuWUbsLqAuWNal7ZA
[Thu 04 Aug 2022 12:28:45 PM +03] received subdomain: 2304239e-b1c8-431b-bf01-6e5222f56bc2
[Thu 04 Aug 2022 12:28:45 PM +03] ##########################################################
[Thu 04 Aug 2022 12:28:45 PM +03] # Create _acme-challenge.1.cbu.edu.tr CNAME 2304239e-b1c8-431b-bf01-6e5222f56bc2.auth.acme-dns.io DNS entry #
[Thu 04 Aug 2022 12:28:45 PM +03] ##########################################################
[Thu 04 Aug 2022 12:28:45 PM +03] Press enter to continue...

[Thu 04 Aug 2022 12:30:31 PM +03] data='{"subdomain":"2304239e-b1c8-431b-bf01-6e5222f56bc2", "txt": "RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU"}'
[Thu 04 Aug 2022 12:30:31 PM +03] POST
[Thu 04 Aug 2022 12:30:31 PM +03] _post_url='https://auth.acme-dns.io/update'
[Thu 04 Aug 2022 12:30:31 PM +03] body='{"subdomain":"2304239e-b1c8-431b-bf01-6e5222f56bc2", "txt": "RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU"}'
[Thu 04 Aug 2022 12:30:31 PM +03] _postContentType
[Thu 04 Aug 2022 12:30:31 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:30:31 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:30:32 PM +03] _ret='0'
[Thu 04 Aug 2022 12:30:32 PM +03] response='{"txt": "RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU"}'
[Thu 04 Aug 2022 12:30:32 PM +03] The txt record is added: Success.
[Thu 04 Aug 2022 12:30:32 PM +03] 1.cbu.edu.tr,_acme-challenge.1.cbu.edu.tr,,dns_acmedns,RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU,/root/.acme.sh/dnsapi/dns_acmedns.sh
[Thu 04 Aug 2022 12:30:32 PM +03] d='2.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:32 PM +03] _d_alias
[Thu 04 Aug 2022 12:30:32 PM +03] txtdomain='_acme-challenge.2.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:32 PM +03] txt='aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI'
[Thu 04 Aug 2022 12:30:32 PM +03] d_api='/root/.acme.sh/dnsapi/dns_acmedns.sh'
[Thu 04 Aug 2022 12:30:32 PM +03] dns_entry='2.cbu.edu.tr,_acme-challenge.2.cbu.edu.tr,,dns_acmedns,aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI,/root/.acme.sh/dnsapi/dns_acmedns.sh'
[Thu 04 Aug 2022 12:30:32 PM +03] Found domain api file: /root/.acme.sh/dnsapi/dns_acmedns.sh
[Thu 04 Aug 2022 12:30:32 PM +03] Adding txt value: aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI for domain:  _acme-challenge.2.cbu.edu.tr
[Thu 04 Aug 2022 12:30:32 PM +03] Using acme-dns
[Thu 04 Aug 2022 12:30:32 PM +03] fulldomain _acme-challenge.2.cbu.edu.tr
[Thu 04 Aug 2022 12:30:32 PM +03] txtvalue aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI
[Thu 04 Aug 2022 12:30:32 PM +03] data='{"subdomain":"2304239e-b1c8-431b-bf01-6e5222f56bc2", "txt": "aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI"}'
[Thu 04 Aug 2022 12:30:32 PM +03] POST
[Thu 04 Aug 2022 12:30:32 PM +03] _post_url='https://auth.acme-dns.io/update'
[Thu 04 Aug 2022 12:30:32 PM +03] body='{"subdomain":"2304239e-b1c8-431b-bf01-6e5222f56bc2", "txt": "aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI"}'
[Thu 04 Aug 2022 12:30:32 PM +03] _postContentType
[Thu 04 Aug 2022 12:30:32 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:30:32 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:30:33 PM +03] _ret='0'
[Thu 04 Aug 2022 12:30:33 PM +03] response='{"txt": "aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI"}'
[Thu 04 Aug 2022 12:30:33 PM +03] The txt record is added: Success.
[Thu 04 Aug 2022 12:30:33 PM +03] 1.cbu.edu.tr,_acme-challenge.1.cbu.edu.tr,,dns_acmedns,RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU,/root/.acme.sh/dnsapi/dns_acmedns.sh
2.cbu.edu.tr,_acme-challenge.2.cbu.edu.tr,,dns_acmedns,aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI,/root/.acme.sh/dnsapi/dns_acmedns.sh
[Thu 04 Aug 2022 12:30:33 PM +03] d='3.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:33 PM +03] _d_alias
[Thu 04 Aug 2022 12:30:33 PM +03] txtdomain='_acme-challenge.3.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:33 PM +03] txt='3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA'
[Thu 04 Aug 2022 12:30:33 PM +03] d_api='/root/.acme.sh/dnsapi/dns_acmedns.sh'
[Thu 04 Aug 2022 12:30:33 PM +03] dns_entry='3.cbu.edu.tr,_acme-challenge.3.cbu.edu.tr,,dns_acmedns,3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA,/root/.acme.sh/dnsapi/dns_acmedns.sh'
[Thu 04 Aug 2022 12:30:33 PM +03] Found domain api file: /root/.acme.sh/dnsapi/dns_acmedns.sh
[Thu 04 Aug 2022 12:30:33 PM +03] Adding txt value: 3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA for domain:  _acme-challenge.3.cbu.edu.tr
[Thu 04 Aug 2022 12:30:33 PM +03] Using acme-dns
[Thu 04 Aug 2022 12:30:33 PM +03] fulldomain _acme-challenge.3.cbu.edu.tr
[Thu 04 Aug 2022 12:30:33 PM +03] txtvalue 3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA
[Thu 04 Aug 2022 12:30:33 PM +03] data='{"subdomain":"2304239e-b1c8-431b-bf01-6e5222f56bc2", "txt": "3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA"}'
[Thu 04 Aug 2022 12:30:33 PM +03] POST
[Thu 04 Aug 2022 12:30:33 PM +03] _post_url='https://auth.acme-dns.io/update'
[Thu 04 Aug 2022 12:30:33 PM +03] body='{"subdomain":"2304239e-b1c8-431b-bf01-6e5222f56bc2", "txt": "3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA"}'
[Thu 04 Aug 2022 12:30:33 PM +03] _postContentType
[Thu 04 Aug 2022 12:30:33 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:30:33 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:30:34 PM +03] _ret='0'
[Thu 04 Aug 2022 12:30:34 PM +03] response='{"txt": "3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA"}'
[Thu 04 Aug 2022 12:30:34 PM +03] The txt record is added: Success.
[Thu 04 Aug 2022 12:30:34 PM +03] 1.cbu.edu.tr,_acme-challenge.1.cbu.edu.tr,,dns_acmedns,RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU,/root/.acme.sh/dnsapi/dns_acmedns.sh
2.cbu.edu.tr,_acme-challenge.2.cbu.edu.tr,,dns_acmedns,aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI,/root/.acme.sh/dnsapi/dns_acmedns.sh
3.cbu.edu.tr,_acme-challenge.3.cbu.edu.tr,,dns_acmedns,3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA,/root/.acme.sh/dnsapi/dns_acmedns.sh
[Thu 04 Aug 2022 12:30:34 PM +03] Let's check each DNS record now. Sleep 20 seconds first.
[Thu 04 Aug 2022 12:30:55 PM +03] You can use '--dnssleep' to disable public dns checks.
[Thu 04 Aug 2022 12:30:55 PM +03] See: https://github.com/acmesh-official/acme.sh/wiki/dnscheck
[Thu 04 Aug 2022 12:30:55 PM +03] _is_idn_d='_acme-challenge.1.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:55 PM +03] _idn_temp
[Thu 04 Aug 2022 12:30:55 PM +03] _is_idn_d='_acme-challenge.1.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:55 PM +03] _idn_temp
[Thu 04 Aug 2022 12:30:55 PM +03] d='1.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:55 PM +03] txtdomain='_acme-challenge.1.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:55 PM +03] aliasDomain='_acme-challenge.1.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:55 PM +03] txt='RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU'
[Thu 04 Aug 2022 12:30:55 PM +03] d_api='/root/.acme.sh/dnsapi/dns_acmedns.sh'
[Thu 04 Aug 2022 12:30:55 PM +03] Checking 1.cbu.edu.tr for _acme-challenge.1.cbu.edu.tr
[Thu 04 Aug 2022 12:30:55 PM +03] _c_txtdomain='_acme-challenge.1.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:55 PM +03] _c_aliasdomain='_acme-challenge.1.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:55 PM +03] _c_txt='RRU63Cjt7vv0Sv6xwvm3H0guFjGMyfmVe7-ZjrUJISU'
[Thu 04 Aug 2022 12:30:55 PM +03] Detect dns server first.
[Thu 04 Aug 2022 12:30:55 PM +03] Use cloudflare doh server
[Thu 04 Aug 2022 12:30:55 PM +03] _ns_ep='https://cloudflare-dns.com/dns-query'
[Thu 04 Aug 2022 12:30:55 PM +03] _ns_domain='_acme-challenge.1.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:55 PM +03] _ns_type='TXT'
[Thu 04 Aug 2022 12:30:55 PM +03] GET
[Thu 04 Aug 2022 12:30:55 PM +03] url='https://cloudflare-dns.com/dns-query?name=_acme-challenge.1.cbu.edu.tr&type=TXT'
[Thu 04 Aug 2022 12:30:55 PM +03] timeout=
[Thu 04 Aug 2022 12:30:55 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:30:55 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:30:56 PM +03] ret='0'
[Thu 04 Aug 2022 12:30:56 PM +03] response='{"Status":0,"TC":false,"RD":true,"RA":true,"AD":false,"CD":false,"Question":[{"name":"_acme-challenge.1.cbu.edu.tr","type":16}],"Answer":[{"name":"_acme-challenge.1.cbu.edu.tr","type":5,"TTL":60,"data":"2304239e-b1c8-431b-bf01-6e5222f56bc2.auth.acme-dns.io."},{"name":"2304239e-b1c8-431b-bf01-6e5222f56bc2.auth.acme-dns.io","type":16,"TTL":1,"data":"\"3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA\""},{"name":"2304239e-b1c8-431b-bf01-6e5222f56bc2.auth.acme-dns.io","type":16,"TTL":1,"data":"\"aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI\""}]}'
[Thu 04 Aug 2022 12:30:56 PM +03] _answers='"Answer":[
"name":"_acme-challenge.1.cbu.edu.tr","type":5,"TTL":60,"data":"2304239e-b1c8-431b-bf01-6e5222f56bc2.auth.acme-dns.io.",
"name":"2304239e-b1c8-431b-bf01-6e5222f56bc2.auth.acme-dns.io","type":16,"TTL":1,"data":"\"3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA\"",
"name":"2304239e-b1c8-431b-bf01-6e5222f56bc2.auth.acme-dns.io","type":16,"TTL":1,"data":"\"aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI\""]'
[Thu 04 Aug 2022 12:30:56 PM +03] Not valid yet, let's wait 10 seconds and check next one.
[Thu 04 Aug 2022 12:30:56 PM +03] _p_txtdomain='_acme-challenge.1.cbu.edu.tr'
[Thu 04 Aug 2022 12:30:56 PM +03] Cloudflare purge TXT record for domain _acme-challenge.1.cbu.edu.tr
[Thu 04 Aug 2022 12:30:56 PM +03] POST
[Thu 04 Aug 2022 12:30:56 PM +03] _post_url='https://cloudflare-dns.com/api/v1/purge?domain=_acme-challenge.1.cbu.edu.tr&type=TXT'
[Thu 04 Aug 2022 12:30:56 PM +03] body
[Thu 04 Aug 2022 12:30:56 PM +03] _postContentType
[Thu 04 Aug 2022 12:30:56 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:30:56 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:30:57 PM +03] _ret='0'
[Thu 04 Aug 2022 12:30:57 PM +03] response='{"msg":"Purge request queued. Please wait a few seconds and verify the request was successful."}'
[Thu 04 Aug 2022 12:31:08 PM +03] _is_idn_d='_acme-challenge.2.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:08 PM +03] _idn_temp
[Thu 04 Aug 2022 12:31:08 PM +03] _is_idn_d='_acme-challenge.2.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:08 PM +03] _idn_temp
[Thu 04 Aug 2022 12:31:08 PM +03] d='2.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:08 PM +03] txtdomain='_acme-challenge.2.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:08 PM +03] aliasDomain='_acme-challenge.2.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:08 PM +03] txt='aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI'
[Thu 04 Aug 2022 12:31:08 PM +03] d_api='/root/.acme.sh/dnsapi/dns_acmedns.sh'
[Thu 04 Aug 2022 12:31:08 PM +03] Checking 2.cbu.edu.tr for _acme-challenge.2.cbu.edu.tr
[Thu 04 Aug 2022 12:31:08 PM +03] _c_txtdomain='_acme-challenge.2.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:08 PM +03] _c_aliasdomain='_acme-challenge.2.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:08 PM +03] _c_txt='aSVRST7U5HagOEvNvPMNwLQCoAA59OC_dNwQkpuujnI'
[Thu 04 Aug 2022 12:31:08 PM +03] Detect dns server first.
[Thu 04 Aug 2022 12:31:08 PM +03] Use cloudflare doh server
[Thu 04 Aug 2022 12:31:08 PM +03] _ns_ep='https://cloudflare-dns.com/dns-query'
[Thu 04 Aug 2022 12:31:08 PM +03] _ns_domain='_acme-challenge.2.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:08 PM +03] _ns_type='TXT'
[Thu 04 Aug 2022 12:31:08 PM +03] GET
[Thu 04 Aug 2022 12:31:08 PM +03] url='https://cloudflare-dns.com/dns-query?name=_acme-challenge.2.cbu.edu.tr&type=TXT'
[Thu 04 Aug 2022 12:31:08 PM +03] timeout=
[Thu 04 Aug 2022 12:31:08 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:31:08 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g'
[Thu 04 Aug 2022 12:31:08 PM +03] ret='0'
[Thu 04 Aug 2022 12:31:08 PM +03] response='{"Status":3,"TC":false,"RD":true,"RA":true,"AD":false,"CD":false,"Question":[{"name":"_acme-challenge.2.cbu.edu.tr","type":16}],"Authority":[{"name":"cbu.edu.tr","type":6,"TTL":3600,"data":"dns.cbu.edu.tr. bid.cbu.edu.tr. 2014121461 3600 3600 1209600 38400"}]}'
[Thu 04 Aug 2022 12:31:08 PM +03] _answers
[Thu 04 Aug 2022 12:31:08 PM +03] Not valid yet, let's wait 10 seconds and check next one.
[Thu 04 Aug 2022 12:31:08 PM +03] _p_txtdomain='_acme-challenge.2.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:08 PM +03] Cloudflare purge TXT record for domain _acme-challenge.2.cbu.edu.tr
[Thu 04 Aug 2022 12:31:08 PM +03] POST
[Thu 04 Aug 2022 12:31:08 PM +03] _post_url='https://cloudflare-dns.com/api/v1/purge?domain=_acme-challenge.2.cbu.edu.tr&type=TXT'
[Thu 04 Aug 2022 12:31:08 PM +03] body
[Thu 04 Aug 2022 12:31:08 PM +03] _postContentType
[Thu 04 Aug 2022 12:31:08 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:31:08 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g'
[Thu 04 Aug 2022 12:31:09 PM +03] _ret='0'
[Thu 04 Aug 2022 12:31:09 PM +03] response='{"msg":"Purge request queued. Please wait a few seconds and verify the request was successful."}'
[Thu 04 Aug 2022 12:31:20 PM +03] _is_idn_d='_acme-challenge.3.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:20 PM +03] _idn_temp
[Thu 04 Aug 2022 12:31:20 PM +03] _is_idn_d='_acme-challenge.3.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:20 PM +03] _idn_temp
[Thu 04 Aug 2022 12:31:20 PM +03] d='3.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:20 PM +03] txtdomain='_acme-challenge.3.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:20 PM +03] aliasDomain='_acme-challenge.3.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:20 PM +03] txt='3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA'
[Thu 04 Aug 2022 12:31:20 PM +03] d_api='/root/.acme.sh/dnsapi/dns_acmedns.sh'
[Thu 04 Aug 2022 12:31:20 PM +03] Checking 3.cbu.edu.tr for _acme-challenge.3.cbu.edu.tr
[Thu 04 Aug 2022 12:31:20 PM +03] _c_txtdomain='_acme-challenge.3.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:20 PM +03] _c_aliasdomain='_acme-challenge.3.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:20 PM +03] _c_txt='3e-VEE5UShoUHgsiQ-Qew7Q9tKJxdMqgSI3QgxkqwgA'
[Thu 04 Aug 2022 12:31:20 PM +03] Detect dns server first.
[Thu 04 Aug 2022 12:31:20 PM +03] Use cloudflare doh server
[Thu 04 Aug 2022 12:31:20 PM +03] _ns_ep='https://cloudflare-dns.com/dns-query'
[Thu 04 Aug 2022 12:31:20 PM +03] _ns_domain='_acme-challenge.3.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:20 PM +03] _ns_type='TXT'
[Thu 04 Aug 2022 12:31:20 PM +03] GET
[Thu 04 Aug 2022 12:31:20 PM +03] url='https://cloudflare-dns.com/dns-query?name=_acme-challenge.3.cbu.edu.tr&type=TXT'
[Thu 04 Aug 2022 12:31:20 PM +03] timeout=
[Thu 04 Aug 2022 12:31:20 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:31:20 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g'
[Thu 04 Aug 2022 12:31:20 PM +03] ret='0'
[Thu 04 Aug 2022 12:31:20 PM +03] response='{"Status":3,"TC":false,"RD":true,"RA":true,"AD":false,"CD":false,"Question":[{"name":"_acme-challenge.3.cbu.edu.tr","type":16}],"Authority":[{"name":"cbu.edu.tr","type":6,"TTL":3600,"data":"dns.cbu.edu.tr. bid.cbu.edu.tr. 2014121461 3600 3600 1209600 38400"}]}'
[Thu 04 Aug 2022 12:31:20 PM +03] _answers
[Thu 04 Aug 2022 12:31:20 PM +03] Not valid yet, let's wait 10 seconds and check next one.
[Thu 04 Aug 2022 12:31:20 PM +03] _p_txtdomain='_acme-challenge.3.cbu.edu.tr'
[Thu 04 Aug 2022 12:31:20 PM +03] Cloudflare purge TXT record for domain _acme-challenge.3.cbu.edu.tr
[Thu 04 Aug 2022 12:31:20 PM +03] POST
[Thu 04 Aug 2022 12:31:20 PM +03] _post_url='https://cloudflare-dns.com/api/v1/purge?domain=_acme-challenge.3.cbu.edu.tr&type=TXT'
[Thu 04 Aug 2022 12:31:20 PM +03] body
[Thu 04 Aug 2022 12:31:20 PM +03] _postContentType
[Thu 04 Aug 2022 12:31:20 PM +03] Http already initialized.
[Thu 04 Aug 2022 12:31:20 PM +03] _CURL='curl --silent --dump-header /root/.acme.sh/http.header  -L  --trace-ascii /tmp/tmp.MQvyVA8HkJ  -g '
[Thu 04 Aug 2022 12:31:21 PM +03] _ret='0'
[Thu 04 Aug 2022 12:31:21 PM +03] response='{"msg":"Purge request queued. Please wait a few seconds and verify the request was successful."}'
[Thu 04 Aug 2022 12:31:32 PM +03] Let's wait 10 seconds and check again.
^C
Same cycle
github-actions[bot] commented 2 years ago

Please provode the log with --debug 2 if this is a bug report.

rizaemet commented 2 years ago

For now, I've done my job like this and problem solved:

I disabled this IF check in .acme.sh/dnsapi/dns_acmedns.sh

####  if [ -z "$ACMEDNS_USERNAME" ] || [ -z "$ACMEDNS_PASSWORD" ]; then
    response="$(_post "" "$ACMEDNS_REGISTER_URL" "" "POST")"
    _debug response "$response"
    ACMEDNS_USERNAME=$(echo "$response" | sed -n 's/^{.*\"username\":[ ]*\"\([^\"]*\)\".*}/\1/p')
    _debug "received username: $ACMEDNS_USERNAME"
    ACMEDNS_PASSWORD=$(echo "$response" | sed -n 's/^{.*\"password\":[ ]*\"\([^\"]*\)\".*}/\1/p')
    _debug "received password: $ACMEDNS_PASSWORD"
    ACMEDNS_SUBDOMAIN=$(echo "$response" | sed -n 's/^{.*\"subdomain\":[ ]*\"\([^\"]*\)\".*}/\1/p')
    _debug "received subdomain: $ACMEDNS_SUBDOMAIN"
    ACMEDNS_FULLDOMAIN=$(echo "$response" | sed -n 's/^{.*\"fulldomain\":[ ]*\"\([^\"]*\)\".*}/\1/p')
    _info "##########################################################"
    _info "# Create $fulldomain CNAME $ACMEDNS_FULLDOMAIN DNS entry #"
    _info "##########################################################"
    _info "Press enter to continue... "
    read -r _
####  fi
Spekpannenkoek commented 2 years ago

The problem with that solution is that you'll need to update your _acme-challenge CNAME record every time you renew (!) and that it'll create a new user account every single time you renew for every subdomain. In your case, after 4 renewals, you'll end up with 12 accounts on the acme-dns server, 9 of them unused.

The cause of this problem is as follows:

As credentials are saved per certificate, using multiple config-home directories won't help.

This problem has come up before, but so far I don't think anyone has tackled this issue. It's not specific to subdomains: -d example.com -d example.org -d example.net would cause this, too.


Solutions to this might be:

  1. Add one TXT record, verify, then add the next one. I don't think this is feasible with acme.sh.
  2. Add all TXT records, but mod acme-dns to allow more records. There are some forks, but it goes against acme-dns's design. acme.sh's dns_acmedns.sh file also assumes a limit of 2 records: dns_acmedns_rm() is blank as there's no real reason to clean up after itself.
  3. Save account credentials per domain, per certificate.

The last option will require some development work and some time testing. I've attached a quick extension to dns_acmedns.sh but it doesn't include automatic registration or saving credentials. You'll need to do both manually.


The following is by no means battle-tested, but it should work fine and is inspired by this ISPMan integration by @garycnew. It might serve as a jumping-off point for someone to properly edit the original implementation. I personally don't have the time, but I encourage you—or anyone else—to take a shot at it.

  1. Getting credentials: Create an account for every domain you want to verify: execute curl -X POST https://auth.acme-dns.io/register three times (or replace auth.acme-dns.io with whatever acme-dns server you want to use).
  2. Saving credentials: Edit .acme.sh/1.cbu.edu.tr/1.cbu.edu.tr.conf (replace 1.cbu.edu.tr with your domain if it differs).
  3. Take your domain name (like some-example.org) and replace - and . like so: some_HYPHEN_example_DOT_org.
  4. Rather than ACMEDNS_USERNAME=... use ACMEDNS_USERNAME_1_DOT_cbu_DOT_edu_DOT_tr=... (or whatever came out of step 3).
  5. Do this for ACMEDNS_PASSWORD= and ACMEDNS_SUBDOMAIN=, too.
  6. Do this for every domain you registered in step 1.
  7. Create .acme.sh/dns_acmednsmulti.sh as below.
  8. Issue a cert: acme.sh --issue --dns dns_acmednsmulti -d ... uses the three accounts you defined.
#!/usr/bin/env sh

dns_acmednsmulti_add() {
  domain="${1#_acme-challenge.}"
  # Change foo-bar.example.org to foo_HYPHEN_bar_DOT_example_DOT_org
  key="$(echo "$domain" | sed "s/\-/_HYPHEN_/g" | sed "s/\./_DOT_/g")"

  # Load values.
  ACMEDNS_BASE_URL="${ACMEDNS_BASE_URL:-$(_readdomainconf "ACMEDNS_BASE_URL_$key")}"
  ACMEDNS_USERNAME="${ACMEDNS_USERNAME:-$(_readdomainconf "ACMEDNS_USERNAME_$key")}"
  ACMEDNS_PASSWORD="${ACMEDNS_PASSWORD:-$(_readdomainconf "ACMEDNS_PASSWORD_$key")}"
  ACMEDNS_SUBDOMAIN="${ACMEDNS_SUBDOMAIN:-$(_readdomainconf "ACMEDNS_SUBDOMAIN_$key")}"

  if [ -z "$(_readdomainconf "ACMEDNS_USERNAME_$key")" ]; then
    _info "To save domain-specific credentials for '$domain':"
    _info "Add 'ACMEDNS_USERNAME_$key' (etc) to the domain configuration file."
  else
    _info "Using domain-specific credentials for '$domain'".
  fi

  # like issue(), find the dnsapi file for dns_acmedns and then source it with "."
  # This will load dns_acmedns_add().
  d_api="$(_findHook "$_dns_root_d" "$_SUB_FOLDER_DNSAPI" "dns_acmedns")"
  . "$d_api"

  dns_acmedns_add "$1" "$2"
}

dns_acmednsmulti_rm() {
  # like issue(), find the dnsapi file for dns_acmedns and then source it with "."
  # This will load dns_acmedns_rm().
  d_api="$(_findHook "$_dns_root_d" "$_SUB_FOLDER_DNSAPI" "dns_acmedns")"
  . "$d_api"
  dns_acmedns_rm "$1" "$2"
}

It's mostly a copy-paste of what already exists (the fallback code to _readaccountconf_mutable) + adding a value in the variable names like in the linked example.

rizaemet commented 2 years ago

Thank you for this complete answer. I will be inform you as soon as possible.

rizaemet commented 2 years ago

I did as you explain and I got the certifate without problem. Thank you very much.

The process still has manual steps and I think an acme-dns api (eg acmednsmulti as you named it) is required for multiple domains. So I'll leave this issue open for now. If you don't have such thoughts, I will fork the project and try to do it myself.

Spekpannenkoek commented 2 years ago

I just made it a separate file so that the changes wouldn't be overwritten by an upgrade of acme.sh. I'm sure people would appreciate an enhanced version of dns_acmedns.sh. :-)

The example listed above is already backwards compatible(*) with existing credentials so it should totally be doable.

() this version will overwrite `ACMEDNS_variables with the last used domain-specific values when it runs, if any exist. That's no problem if either _none_ or _all_ domains in the certificate useACMEDNS*` variables. A cleaner implementation could leave the old values alone.

b-a-t commented 2 years ago

I think that @Spekpannenkoek analysis is correct, but at the top of that the current dns_acmedns.sh script destroys the account information on the first run and, especially if you run self-hosted acme-dns server, all subsequent runs are creating and using newly created accounts on every run.

One of the indications of such a problem is the line:

[Thu 04 Aug 2022 10:35:29 AM +03] Press enter to continue...

in the debug output.

It comes down to the code in the script:

dns_acmedns_add() {
  fulldomain=$1
  txtvalue=$2
  _info "Using acme-dns"
  _debug "fulldomain $fulldomain"
  _debug "txtvalue $txtvalue"

  #for compatiblity from account conf
  ACMEDNS_USERNAME="${ACMEDNS_USERNAME:-$(_readaccountconf_mutable ACMEDNS_USERNAME)}"
  _clearaccountconf_mutable ACMEDNS_USERNAME
  ACMEDNS_PASSWORD="${ACMEDNS_PASSWORD:-$(_readaccountconf_mutable ACMEDNS_PASSWORD)}"
  _clearaccountconf_mutable ACMEDNS_PASSWORD
  ACMEDNS_SUBDOMAIN="${ACMEDNS_SUBDOMAIN:-$(_readaccountconf_mutable ACMEDNS_SUBDOMAIN)}"
  _clearaccountconf_mutable ACMEDNS_SUBDOMAIN

  ACMEDNS_BASE_URL="${ACMEDNS_BASE_URL:-$(_readdomainconf ACMEDNS_BASE_URL)}"
  ACMEDNS_USERNAME="${ACMEDNS_USERNAME:-$(_readdomainconf ACMEDNS_USERNAME)}"
  ACMEDNS_PASSWORD="${ACMEDNS_PASSWORD:-$(_readdomainconf ACMEDNS_PASSWORD)}"
  ACMEDNS_SUBDOMAIN="${ACMEDNS_SUBDOMAIN:-$(_readdomainconf ACMEDNS_SUBDOMAIN)}"

  if [ "$ACMEDNS_BASE_URL" = "" ]; then
    ACMEDNS_BASE_URL="https://auth.acme-dns.io"
  fi

So what happens here is the removal of the acme-dns account info from the $ACME_HOME/account.conf file and transition of it to the domain config file $CERT_HOME/domain/domain.conf for the first domain you happen to add/renew after the upgrade. All subsequent runs won't have that info and will start to create new accounts on the default https://auth.acme-dns.io server.

The cure is also given in the top comments of the script:

# Usage:
# export ACMEDNS_BASE_URL="https://auth.acme-dns.io"
#
# You can optionally define an already existing account:
#
# export ACMEDNS_USERNAME="<username>"
# export ACMEDNS_PASSWORD="<password>"
# export ACMEDNS_SUBDOMAIN="<subdomain>"

Also, for existing domains you can add those lines to the $domain.conf file:

...
Le_API='https://acme-v02.api.letsencrypt.org/directory'
Le_Keylength='2048'
Le_DNSSleep='15'
Le_CertCreateTime='1659950296'
Le_CertCreateTimeStr='Mon Aug  8 09:18:17 UTC 2022'
Le_NextRenewTimeStr='Fri Oct  7 09:18:16 UTC 2022'
Le_NextRenewTime='1665047896'
ACMEDNS_BASE_URL="https://auth.acme-dns.io"
ACMEDNS_USERNAME="<username>"
ACMEDNS_PASSWORD="<password>"
ACMEDNS_SUBDOMAIN="<subdomain>"
gaby64 commented 1 year ago

https://github.com/acmesh-official/acme.sh/pull/4007

garycnew commented 1 year ago

@Spekpannenkoek It's nice to see that someone actually reads my code; even, if it is from a merge request that's stuck in Lalaland (which I assumed was not world readable).

I want to provide an update confirming that the multi-domain code is working without issue; since, originally submitting it as a merge request. The code is a byproduct of needing a workaround for a feature in acme.sh; before, its time. It's nice to see that the code might be helpful toward a more permanent solution.

Now, I'm faced with a new Issue #4683 that appears to be the result of ZeroSSL changing their External Account Binding parameters; causing, my Wildcard, SAN Certs to fail renewal. Any assistance in troubleshooting/resolving this separate issue is much appreciated.

maddes-b commented 6 months ago

Hi everybody, just started using acme.sh with acme-dns. I will also have a look for a good and complete solution and will create a pull request. Additionally I want support for custom register and update URL pathes. I will get back to this issue soon.

P.S. The code of dns_acmedns.sh differs between acmesh-official and dampfklon

maddes-b commented 6 months ago

Ok, here are my two cents for a solution.

There are 2 parts to consider for creating a solution for DNS API auth services set up with or similar to acme-dns:

  1. There could be mutliple DNS API services with different setups (ports, URL paths, etc.) for the "same" DNS API script
  2. There could be multiple accounts on the same DNS API service (that's always the case with acme-dns)

Instead of using lots of variables to pass multiple accounts for multiple domains on a single dns provider, I would suggest to extend acme.sh to store more challenge information via normal parameters. Again there are 2 possibilities for this, where I actually prefer the 2nd option:

  1. Extend existing parameter --challenge-alias to allow typical credential URLs --challenge-alias "https://<user>:<password>@<challenge domain>.<auth domain>.<auth tld>[:<port>]/update"
    • The argument will be split up into...
      • the user <user>
      • the password <pw>
      • the challenge domain <challenge domain>.<auth domain>.<auth tld>
      • the DNS API URL https://<auth domain>.<auth tld>[:<port>]/update
    • Disadvantages:
      • DNS API URL must be the basis [sub]domain of related challenge aliases - reduces flexibility in acme-dns setup but still manageable as access to DNS is already there (for general DNS alias mode and acme-dns setup)
      • Puts multiple information into a single parameter - increases possibility of errors due to... a) entering information at the wrong spot b) parsing the input, which may need URL encoding(decoding, e.g. an @ symbol within the password c) changes meaning of parameter and information could be different for each and every DNS API script
      • Other information cannot be passed, e.g. URL path for registration of acme-dns, could be mitigated by specifying that user has to register for [sub]domain on their own beforehand (= removing registration process from DNS API script)
  2. Add new parameters --challenge-user "<user>", --challenge-pw "<pw>", --challenge-api1 "https://<auth domain>.<auth tld>[:<port>]/update", --challenge-api2 "https://<auth domain>.<auth tld>[:<port>]/register", etc.
    • Advantages:
      • No parsing and encoding necessary, all arguments can be passed/used as-is
      • Generic enough to be used by all DNS API services/scripts, and even other [future] challenge modes could use these
      • That's why --challenge-api is numbered and not named, so that the meanings can differ per DNS API service/script, but still can be handled in a generic way within acme.sh
      • acme-dns currently only needs 2 as of now
      • --challenge-api1 to --challenge-api9 should provide enough flexibility for DNS API scripts, otherwise go for double digits 01-09 to allow much more in the future (up to 99; from my pov this is overkill)

For both options acme.sh has to be checked (at least I would have to) how it stores multiple values as a list, how these are assigned to the final certificate SAN domains, and how to process them correctly within a DNS API script.

Spekpannenkoek's solution with creating additional config files for each challenge alias is better than using lots of env vars, but I still prefer to have a more generic solution that may help in more situations.

@Neilpang:

Direct contact possible via my homepage or outsource discusssion to a discussion thread.

Thanks for reading Maddes

maddes-b commented 2 months ago

I wrote my own acme-dns-client that works with acme.sh and certbot with multiple domains in a single certificate. The script uses Python, so it does not fully fit the acme.sh approach of "shell only". Please have a look here: https://github.com/maddes-b/acme-dns-client-2 Feedback welcome.