Please fill out the fields below so we can help you better. Note: you must provide your domain name to get help. Domain names for issued certificates are all made public in Certificate Transparency logs (e.g. crt.sh | example.com), so withholding your domain name here does not increase secrecy, but only makes it harder for us to provide help.
My domain is: brak.myqnapcloud.com
I ran this command: clicked on "Certificate Renewal" button in SSL Certificate & Private Key tab of Security section of Control Panel.
It produced this output:
A domain validation challenge was not received from the ACME Server. Ensure that your router and QNAP device both accept inbound traffic on ports 80 and 443 which is a requirement from Let's Encrypt.
My web server is (include version): Apache (can't get version because ServerTokens is set to Prod and I can't figure out how to change it)
The operating system my web server runs on is (include version):
Linux U16BuildServer56 4.4.0-178-generic #208-Ubuntu SMP Sun Apr 5 23:45:10 UTC 2020 x86_64 GNU/Linux
My hosting provider, if applicable, is: local NAS
I can login to a root shell on my machine (yes or no, or I don't know): Yes
I'm using a control panel to manage my site (no, or provide the name and version of the control panel): No
The version of my client is (e.g. output of certbot --version
or certbot-auto --version
if you're using Certbot): QNAP QTS 5.1.4.2596
Ports 80 and 443 are open. My DDNS connectivity test shows green on both ports.
Other posts I've read mentioned the logs, so I found these:
acme_error_log_http:
02/06/24 23:15:43 - args: Namespace(account_key='/mnt/ext/opt/QcloudSSLCertificate/cert/account/key', acme_dir='/mnt/ext/opt/QcloudSSLCertificate/cert/.well-known/acme-challenge', ca='https://acme-v02.api.letsencrypt.org', cert_file='/mnt/ext/opt/QcloudSSLCertificate/cert/cert_tmp', chain_file='/mnt/ext/opt/QcloudSSLCertificate/cert/chain_tmp', contact=['mailto:myemail@gmail.com'], csr='/mnt/ext/opt/QcloudSSLCertificate/cert/csr', directory_url='https://acme-v02.api.letsencrypt.org/directory', disable_check=False, qpkg_dir='/mnt/ext/opt/QcloudSSLCertificate', quiet=40, verify_type='http', web_document_root='/Web', well_known_dir='/mnt/ext/opt/QcloudSSLCertificate/cert/.well-known')
Traceback (most recent call last):
File "/mnt/ext/opt/QcloudSSLCertificate/bin/acme-tiny/acme_tiny.py", line 385, in main
qpkg_path=args.qpkg_dir, challenge_type=challenge_type, ca_certs=ca_certs, web_document_root=web_document_root_list)
File "/mnt/ext/opt/QcloudSSLCertificate/bin/acme-tiny/acme_tiny.py", line 271, in get_crt
wellknown_path, tmp_wellknown_url), ERROR_CODE_CHALLENGE_NOT_FOUND)
CustomError: Wrote file to /mnt/ext/opt/QcloudSSLCertificate/cert/.well-known/acme-challenge/scFvB5xfx3ZQSbpuMpm9O8X6FtRBZNReCc_i3npJcRA, but couldn't download http://localhost/.well-known/acme-challenge/scFvB5xfx3ZQSbpuMpm9O8X6FtRBZNReCc_i3npJcRA
acme_error_log_https:
02/06/24 23:15:48 - args: Namespace(account_key='/mnt/ext/opt/QcloudSSLCertificate/cert/account/key', acme_dir='/mnt/ext/opt/QcloudSSLCertificate/cert/.well-known/acme-challenge', ca='https://acme-v02.api.letsencrypt.org', cert_file='/mnt/ext/opt/QcloudSSLCertificate/cert/cert_tmp', chain_file='/mnt/ext/opt/QcloudSSLCertificate/cert/chain_tmp', contact=['mailto:myemail@gmail.com'], csr='/mnt/ext/opt/QcloudSSLCertificate/cert/csr', directory_url='https://acme-v02.api.letsencrypt.org/directory', disable_check=False, qpkg_dir='/mnt/ext/opt/QcloudSSLCertificate', quiet=40, verify_type='https', web_document_root='/Web', well_known_dir='/mnt/ext/opt/QcloudSSLCertificate/cert/.well-known')
Traceback (most recent call last):
File "/mnt/ext/opt/QcloudSSLCertificate/bin/acme-tiny/acme_tiny.py", line 385, in main
qpkg_path=args.qpkg_dir, challenge_type=challenge_type, ca_certs=ca_certs, web_document_root=web_document_root_list)
File "/mnt/ext/opt/QcloudSSLCertificate/bin/acme-tiny/acme_tiny.py", line 282, in get_crt
raise ex
ValueError: Challenge did not pass for brak.myqnapcloud.com: {u'status': u'invalid', u'challenges': [{u'status': u'invalid', u'validationRecord': [{u'hostname': u'brak.myqnapcloud.com', u'addressUsed': u'69.218.230.195', u'port': u'443', u'addressesResolved': [u'69.218.230.195']}], u'url': u'https://acme-v02.api.letsencrypt.org/acme/chall-v3/312484283987/j-3grw', u'token': u'scFvB5xfx3ZQSbpuMpm9O8X6FtRBZNReCc_i3npJcRA', u'error': {u'status': 403, u'type': u'urn:ietf:params:acme:error:unauthorized', u'detail': u'Incorrect validation certificate for tls-alpn-01 challenge. Requested brak.myqnapcloud.com from 69.218.230.195:443. Received certificate which is not self-signed.'}, u'validated': u'2024-02-07T04:15:48Z', u'type': u'tls-alpn-01'}], u'identifier': {u'type': u'dns', u'value': u'brak.myqnapcloud.com'}, u'expires': u'2024-02-14T04:15:43Z'}
I set up my LE certificate several years ago. It's been auto-renewing fine for years. I haven't changed anything on the NAS or on my router that I can think of that would cause this to break.
Thanks for any help!