Certbot failed to authenticate some domains (authenticator: webroot)

Certbot failed to authenticate some domains (authenticator: webroot). The Certificate Authority reported these problems:
Domain: www.xxxxx.net
Type: unauthorized
Detail: 2606:4700::6811:c519: Invalid response from https://www.xxxxx.net/.well-known/acme-challenge/dupNW366nlj5rHr9U3cwO4vjMSt8oVi_rncv8AT3n8g: 404

Hint: The Certificate Authority failed to download the temporary challenge files created by Certbot. Ensure that the listed domains serve their content from the provided --webroot-path/-w and that files created there can be downloaded from the internet.

No one here can of much help to you without your actual domain name at a bare minimum. You should have been presented a template to complete which explained that.

The IP in the error message indicates that you are using Cloudflare which can introduce issues if not correctly configured.

4 Likes

currrently, lets encrypt running on Windows OS and certify SSL management software running on Windows OS, and the path is C:\inetpub\wwwroot\
we have containzered the certbot, and running on the AWS ECS container. but, this is a Linux container.
please find an error below:

certbot certonly --webroot -w /etc/letsencrypt -d www.abidefurniture.net
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Requesting a certificate for www.abidefurniture.net

Certbot failed to authenticate some domains (authenticator: webroot). The Certificate Authority reported these problems:
Domain: www.abidefurniture.net
Type: unauthorized
Detail: 2606:4700::6811:c619: Invalid response from https://www.abidefurniture.net/.well-known/acme-challenge/yI5sXTsBPM-_elgkDKxouVVVhYR8cf4ewO7wOQnnU1A: 404

Hint: The Certificate Authority failed to download the temporary challenge files created by Certbot. Ensure that the listed domains serve their content from the provided --webroot-ated there can be downloaded from the internet.

Some challenges have failed.
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.

Hi @gopikrishna72, and welcome to the LE community forum :slight_smile:

The failure is via HTTPS.
That means HTTP was heard and redirected to HTTPS.

The failure is via IPv6.
That might mean that perhaps IPv6 is not configured as IPv4 is.

The error code returned was 404 [while using webroot ].
That could mean the webroot is incorrect.
[OR the HTTP and HTTPS webroots may differ]

All that said...
I see that the site is behind Cloudflare:

Name:      cloudflare.microdinc.com.cdn.cloudflare.net
Addresses: 2606:4700::6811:c519
           2606:4700::6811:c619
           104.17.197.25
           104.17.198.25
Aliases:   www.abidefurniture.net
           cloudflare.microdinc.com

That introduces its' own set of complications [not directly related to this site].
Before you continue testing:

  • use the LE staging environment for all test [not production LE]
  • You should place a test text file in the expected challenge location and ensure it can be reached from the Internet before continuing to test the ACME client

Note: The expected challenge location would be: "webroot" + "/.well-known/acme-challenge/"

3 Likes

i have created test text file in the challenge location still, i got the below error

cd ~
# mkdir certs-data
# cd certs-data
# mkdir .well-known
# cd .well-known
# echo test >> index.html

# curl http://abidefurniture.net/.well-known/

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>403 - Forbidden: Access is denied.</title>
<style type="text/css">
<!--
body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;}
fieldset{padding:0 15px 10px 15px;} 
h1{font-size:2.4em;margin:0;color:#FFF;}
h2{font-size:1.7em;margin:0;color:#CC0000;} 
h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;} 
#header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF;
background-color:#555555;}
#content{margin:0 0 0 2%;position:relative;}
.content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;position:relative;}
-->
</style>
</head>
<body>
<div id="header"><h1>Server Error</h1></div>
<div id="content">
 <div class="content-container"><fieldset>
  <h2>403 - Forbidden: Access is denied.</h2>
  <h3>You do not have permission to view this directory or page using the credentials that you supplied.</h3>
 </fieldset></div>
</div>
</body>
</html>

# certbot certonly --webroot -w /root/certs-data/ -d abidefurniture.net

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Requesting a certificate for abidefurniture.net

Certbot failed to authenticate some domains (authenticator: webroot). The Certificate Authority reported these problems:
  Domain: abidefurniture.net
  Type:   unauthorized
  Detail: 34.73.74.95: Invalid response from http://abidefurniture.net/.well-known/acme-challenge/wyXE5ZKcEWF1dp0gNULvn59WQG0PCZOFkQOq7G_Cxk8: 404

Hint: The Certificate Authority failed to download the temporary challenge files created by Certbot. Ensure that the listed domains serve their content from the provided --webroot-path/-w and that files created there can be downloaded from the internet.

Some challenges have failed.
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.

Does that place you at?:

If not, then you have not created a text file in the challenge location.
Furthermore, the test text file should NOT end with .html [nor . anything].

Show:
cd ~
pwd

3 Likes

Actually, the expected challenge location includes /acme-challenge/ [which you omitted].
http://example.com/.well-known/acme-challenge/Test_File-1234
and as seen by the error message:

3 Likes

i have created .well-known/acme-challenge path still got the same error

root@ip-10-0-23-137:~/certs-data/.well-known/acme-challenge# curl http://abidefurniture.net/.well-known/ // "test"

403 - Forbidden: Access is denied.

Server Error

403 - Forbidden: Access is denied.

You do not have permission to view this directory or page using the credentials that you supplied.

curl: (3) URL using bad/illegal format or missing URL curl: (6) Could not resolve host: test root@ip-10-0-23-137:~/certs-data/.well-known/acme-challenge# certbot certonly --webroot -w /root/certs-data/ -d abidefurniture.net Saving debug log to /var/log/letsencrypt/letsencrypt.log Requesting a certificate for abidefurniture.net

Certbot failed to authenticate some domains (authenticator: webroot). The Certificate Authority reported these problems:
Domain: abidefurniture.net
Type: unauthorized
Detail: 34.73.74.95: Invalid response from http://abidefurniture.net/.well-known/acme-challenge/nHGryA0P4N0D-R6Yod0FctNmEtdRTzmQK2EGbWkPAn4: 404

Hint: The Certificate Authority failed to download the temporary challenge files created by Certbot. Ensure that the listed domains serve their content from the provided --webroot-path/-w and that files created there can be downloaded from the internet.

Some challenges have failed.
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.
root@ip-10-0-23-137:~/certs-data/.well-known/acme-challenge#

path is

root@ip-10-0-23-137:~/certs-data/.well-known/acme-challenge# tree
.
└── index.html

1 directory, 1 file
root@ip-10-0-23-137:~/certs-data/.well-known/acme-challenge#

i have created test file. it require any data or please provide a sample test file i will copy in acme-challenge location

Please execute those two commands and show the output.

2 Likes

root@ip-10-0-23-137:/# cd ~
root@ip-10-0-23-137:~# pwd
/root
root@ip-10-0-23-137:~#

1 Like

What shows?:
ls -laR /root/certs-data

2 Likes

Starting session with SessionId: ecs-execute-command-0eb628aaf08be6f30
root@ip-10-0-23-137:/# ls -laR /root/certs-data
/root/certs-data:
total 12
drwxr-xr-x 3 root root 4096 Oct 18 09:58 .
drwx------ 1 root root 4096 Oct 18 12:44 ..
drwxrwxrwx 3 root root 4096 Oct 18 12:41 .well-known

/root/certs-data/.well-known:
total 16
drwxrwxrwx 3 root root 4096 Oct 18 12:41 .
drwxr-xr-x 3 root root 4096 Oct 18 09:58 ..
drwxrwxrwx 2 root root 4096 Oct 18 13:04 acme-challenge
-rwxrwxrwx 1 root root 5 Oct 18 10:01 index.html

/root/certs-data/.well-known/acme-challenge:
total 12
drwxrwxrwx 2 root root 4096 Oct 18 13:04 .
drwxrwxrwx 3 root root 4096 Oct 18 12:41 ..
-rw-r--r-- 1 root root 5 Oct 18 12:53 index.html
-rw-r--r-- 1 root root 0 Oct 18 13:04 test
root@ip-10-0-23-137:/#

That seems correct.
But I can't reach either of the "test" files:

curl -Ii http://abidefurniture.net/.well-known/acme-challenge/test
HTTP/1.1 404 Not Found
Content-Length: 1245
Content-Type: text/html
Server: Microsoft-IIS/10.0
X-Powered-By: ASP.NET
Date: Wed, 18 Oct 2023 20:32:41 GMT
curl -Ii http://abidefurniture.net/.well-known/acme-challenge/index.html
HTTP/1.1 404 Not Found
Content-Length: 1245
Content-Type: text/html
Server: Microsoft-IIS/10.0
X-Powered-By: ASP.NET

I'm thinking CF may be consuming the ACME challenge requests.

Please review the IIS web logs to see if any of those requests are being heard.

Another choice is to switch to DNS-01 authentication.

2 Likes

Since you are using CF for DNS:

abidefurniture.net nameserver = simon.ns.cloudflare.com
abidefurniture.net nameserver = tani.ns.cloudflare.com

It would be quite simple to use a Windows ACME client that can obtain certs via DNS-01 via CF.
Like:

3 Likes

currently, we are using this windows certify software solution we want to containerized and certify SSL solution is require license.

what is the issue why it is not working on container?

2 Likes

Switch it to use DNS-01 authentication [not HTTP, not WebRoot].

2 Likes

do you want me to view certify software IIS web logs? please confirm