Hi,
I have a Gentoo Apache2 HTTP host with letsencrypt certificates for several domains.
I've been simply renewing certs for years with a cron job:
certbot renew -q
No issues until today, and I now have less than a month to fix this before the certs expire...
# certbot --version
certbot 1.22.0
The renewal process fails because it is unable to find the acme challenge URI (HTTP code 404).
The Gentoo host is online on tcp port 80.
I thought I'd just grab new certs with
certbot certonly --apache -d mydomainlist
but it gave me the same error (404).
So I followed the guide here: Certbot Instructions | Certbot
and ran:
certbot --apache -d mydomainlist
However, I'm still getting the same 404 errors.
Here's an example (just one, such as supranet.hmanacor.org, because there are more than 40):
Certbot failed to authenticate some domains (authenticator: apache). The Certificate Authority reported these problems:
Domain: mydomain
Type: unauthorized
Detail: Invalid response from http://mydomain/.well-known/acme-challenge/cwfFZPIquTk0chaC5AJjGz4gi1y3ZfvROg0JukLJ6sA: 404
Hint: The Certificate Authority failed to verify the temporary Apache configuration changes made by Certbot. Ensure that the listed domains point to this Apache server and that it is accessible from the internet.
If I run curl from the WAN side of my server I get something like this (eg. supranet.hmanacor.org):
# curl -Ii http://mydomain
HTTP/1.1 200 OK
Date:
Server: Apache
Content-Security-Policy: frame-ancestors 'self' https://*.mydomain:*
Strict-Transport-Security: max-age=63072000; includeSubdomains; preload
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Type: text/html; charset=UTF-8
My conf files are in the standard location on Gentoo:
/etc/apache2/vhosts.d
I do not see any conf file changes after running the above certbot command.
Should I see them, or are they just temporary and reverted back when certbot exits?
Is my certbot version too old, and that's why it is now failing all of a sudden maybe due to a change on letsencrypt's side?
BTW, I am NOT geoblocking or WAFing. In fact, I can see that clients try to access the challenge in my Apache log:
"GET /.well-known/acme-challenge/cwfFZPIquTk0chaC5AJjGz4gi1y3ZfvROg0JukLJ6sA HTTP/1.1" 404 37
What puzzles me is that I've been renewing all these years without any trouble at all, and now all of a sudden I'm getting this odd behavior.
Any suggestions?
BTW, is there a guide somewhere to manually configure the Apache configuration files (just the certbot/acme challenge part)?
Thanks