403 Unauthorized/forbidden when using certbot-auto renew --dry-run


#1

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. https://crt.sh/?q=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:
ravenrosecomputing.com
I ran this command:
/root/bin/certbot-auto renew --dry-run
It produced this output:
Attempting to renew cert (ravenrosecomputing.com) from /etc/letsencrypt/renewal/ravenrosecomputing.com.conf produced an unexpected error: Failed authorization procedure. ravenrosecomputing.com (http-01): urn:ietf:params:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://ravenrosecomputing.com/.well-known/acme-challenge/EYtLQeo8hxR2myaADKHayJopLaukQcxu5X7B0MDZcEY: “\n\n403 Forbidden\n\n

Forbidden

\n<p”. Skipping.
All renewal attempts failed. The following certs could not be renewed:
/etc/letsencrypt/live/ravenrosecomputing.com/fullchain.pem (failure)
My web server is (include version):
apache 2.2.15 built 6/19/2018 with Mod-Mono support
The operating system my web server runs on is (include version):
CentOS release 6.10 (final)
My hosting provider, if applicable, is:
1&1 Ionos
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):
0.30.2

#2

Hi @kosovmd

if you want to use http - 01 - validation, Certbot creates a file in /.well-known/acme-challenge, Letsencrypt checks this file.

But there is no access ( https://check-your-website.server-daten.de/?q=ravenrosecomputing.com ):

Domainname Http-Status redirect Sec. G
http://ravenrosecomputing.com/
198.71.51.142 403 0.264 M
Forbidden
http://www.ravenrosecomputing.com/
198.71.51.142 403 0.267 M
Forbidden
https://ravenrosecomputing.com/
198.71.51.142 200 2.653 B
https://www.ravenrosecomputing.com/
198.71.51.142 200 4.590 N
Certificate error: RemoteCertificateNameMismatch
http://ravenrosecomputing.com/.well-known/acme-challenge/check-your-website-dot-server-daten-dot-de
198.71.51.142 403 0.270 M
Forbidden
http://www.ravenrosecomputing.com/.well-known/acme-challenge/check-your-website-dot-server-daten-dot-de
198.71.51.142 403 0.264 M
Forbidden

Port 80 is open, this is good. But there is a http status 404 (Not Found) expected, not a 403 - Forbidden.

So change your permissions.


#3

You should allow the /.well-known/acme-challenge/ request to pass without requiring authentication (403).


#4

This worked. Had to comment out the following line in my httpd.conf file:

Options FollowSymLinks

AllowOverride All

SSLRequireSSL