certbot certonly --manual -w /var/www/htdocs/mw/02120 -d www.mediawikiwidgets.org -d mediawikiwidgets.org --dry-runSaving debug log to /var/log/letsencrypt/letsencrypt.log
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for www.mediawikiwidgets.org
http-01 challenge for mediawikiwidgets.org
-------------------------------------------------------------------------------
NOTE: The IP of this machine will be publicly logged as having requested this
certificate. If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.
Are you OK with your IP being logged?
-------------------------------------------------------------------------------
(Y)es/(N)o: y
-------------------------------------------------------------------------------
Make sure your web server displays the following content at
http://www.mediawikiwidgets.org/.well-known/acme-challenge/Vo-KOGpn5T4tv9pZJMSfORYmQrGSVVlytLcOfRJVA7c before continuing:
Vo-KOGpn5T4tv9pZJMSfORYmQrGSVVlytLcOfRJVA7c.GYoUP2kb9PLDQ5pztmYlfzsbKyc5SQadoXnpAAlLtOs
If you don't have HTTP server configured, you can run the following
command on the target server (as root):
mkdir -p /tmp/certbot/public_html/.well-known/acme-challenge
cd /tmp/certbot/public_html
printf "%s" Vo-KOGpn5T4tv9pZJMSfORYmQrGSVVlytLcOfRJVA7c.GYoUP2kb9PLDQ5pztmYlfzsbKyc5SQadoXnpAAlLtOs > .well-known/acme-challenge/Vo-KOGpn5T4tv9pZJMSfORYmQrGSVVlytLcOfRJVA7c
# run only once per server:
$(command -v python2 || command -v python2.7 || command -v python2.6) -c \
"import BaseHTTPServer, SimpleHTTPServer; \
s = BaseHTTPServer.HTTPServer(('', 80), SimpleHTTPServer.SimpleHTTPRequestHandler); \
s.serve_forever()"
-------------------------------------------------------------------------------
Press Enter to Continue
-------------------------------------------------------------------------------
Make sure your web server displays the following content at
http://mediawikiwidgets.org/.well-known/acme-challenge/BEjwOG0KGkkX_SVNa2CsfppzNap1AOwZzk_pu-poO9g before continuing:
BEjwOG0KGkkX_SVNa2CsfppzNap1AOwZzk_pu-poO9g.GYoUP2kb9PLDQ5pztmYlfzsbKyc5SQadoXnpAAlLtOs
If you don't have HTTP server configured, you can run the following
command on the target server (as root):
mkdir -p /tmp/certbot/public_html/.well-known/acme-challenge
cd /tmp/certbot/public_html
printf "%s" BEjwOG0KGkkX_SVNa2CsfppzNap1AOwZzk_pu-poO9g.GYoUP2kb9PLDQ5pztmYlfzsbKyc5SQadoXnpAAlLtOs > .well-known/acme-challenge/BEjwOG0KGkkX_SVNa2CsfppzNap1AOwZzk_pu-poO9g
# run only once per server:
$(command -v python2 || command -v python2.7 || command -v python2.6) -c \
"import BaseHTTPServer, SimpleHTTPServer; \
s = BaseHTTPServer.HTTPServer(('', 80), SimpleHTTPServer.SimpleHTTPRequestHandler); \
s.serve_forever()"
-------------------------------------------------------------------------------
Press Enter to Continue
Waiting for verification...
Cleaning up challenges
Failed authorization procedure. mediawikiwidgets.org (http-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://mediawikiwidgets.org/.well-known/acme-challenge/BEjwOG0KGkkX_SVNa2CsfppzNap1AOwZzk_pu-poO9g: "<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/D", www.mediawikiwidgets.org (http-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://www.mediawikiwidgets.org/.well-known/acme-challenge/Vo-KOGpn5T4tv9pZJMSfORYmQrGSVVlytLcOfRJVA7c: "<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/D"
IMPORTANT NOTES:
- The following errors were reported by the server:
Domain: mediawikiwidgets.org
Type: unauthorized
Detail: Invalid response from
http://mediawikiwidgets.org/.well-known/acme-challenge/BEjwOG0KGkkX_SVNa2CsfppzNap1AOwZzk_pu-poO9g:
"<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/D"
Domain: www.mediawikiwidgets.org
Type: unauthorized
Detail: Invalid response from
http://www.mediawikiwidgets.org/.well-known/acme-challenge/Vo-KOGpn5T4tv9pZJMSfORYmQrGSVVlytLcOfRJVA7c:
"<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/D"
To fix these errors, please make sure that your domain name was
entered correctly and the DNS A record(s) for that domain
contain(s) the right IP address.
I will check. Still I am wondering why it worked for one and a half year and starts to fail now.
I think (though I'm not sure and maybe someone can confirm this) if the IPv6 fails to connect at all, the validation falls back to IPv4, so maybe the other server on the IPv6 address only recently started responding on port 80?
Indeed, that explains my situation. I would never have come up with this though I usually make sure that A and AAAA point to the same server. I guess a senior moment made me not do this in this case.