Hi,
I have tried to install a SSL certificate for my website, but I get the following error when running command sudo certbot --nginx
Failed authorization procedure. bankofharry.nl (http-01): urn:ietf:params:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://bankofharry.nl/.well-known/acme-challenge/kntRkxc0oGU8oKPwCBxbSdvf9KvcpZpIFalf2Z4fG2I: "<!doctype html><html lang="nl"> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no"
IMPORTANT NOTES:
The following errors were reported by the server:
Domain: bankofharry.nl
Type: unauthorized
Detail: Invalid response from
http://bankofharry.nl/.well-known/acme-challenge/kntRkxc0oGU8oKPwCBxbSdvf9KvcpZpIFalf2Z4fG2I:
"<!doctype html><html lang="nl"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width,
user-scalable=no"
To fix these errors, please make sure that your domain name was
entered correctly and the DNS A/AAAA record(s) for that domain
contain(s) the right IP address.
My DNS settings look like:
Anyone an idea what I should fix? Thank you
The site’s IPv6 address is running Apache, so certbot --nginx
won’t work, unless the right reverse proxying is set up.
The site’s IPv4 address is running Nginx.
Are you sure the DNS records and web server setups are correct?
https://letsdebug.net/bankofharry.nl/22103
1 Like
Thanks, indeed, I had to remove that IPv6 records, since no IPv6 IP present.
Now I am some steps further, installing the SSL seemd to work, but the debug page still shows some errors.
https://letsdebug.net/bankofharry.nl/22117
Hi @CryptoNerd0_9
your site is completely invisible ( https://check-your-website.server-daten.de/?q=bankofharry.nl ):
Looks like you have a firewall or another active blocking component.
Blocking /.well-known/acme-challenge/random-filename is critical. There a http status 404 (Not found) is expected.
1 Like
True about firewall, ufw is active and I followed steps described in https://gist.github.com/Helmi/68879e72d2221ef0be24fcd6776c0c97
uwf status
command gives
CryptoNerd0_9:
uwf status
command gives
Then there must be a second blocking instance.
Or your VirtualHost - configuration is wrong, so a request doesn't find your server.
Try to open a link like
http://www.bankofharry.nl/.well-known/acme-challenge/1234
in your browser.
Tried a few links, f.e. http://www.bankofharry.nl/var/www/html/index.nginx-debian.html
But it doesn’t work, it gives connection refused message.
Strange thing is, that http://95.179.147.177:80 does not work, but http://bankofharry.nl:80 gives ‘welcome to nginx’ page.
But only internal. I see again "Connection refused".
PS: If you don't have a Standard-VHost, it's ok that the ip doesn't answer.
Hmm , there was something cached, tried with Ctrl+F5, then indeed connection refused.
The VM I am running if on Vultr. Any idea what more to check?
Thanks for your quick replies by the way, much appreciated!
I am wondering what’s blocking these ports, because when you go directly to http://95.179.147.177:8081 it works (however, not secured).
That's your answer, I can see this page.
The internal redirect port 80 -> port 8081 doesn't work.
Yep: Checking this port ( https://check-your-website.server-daten.de/?q=bankofharry.nl%3A8081 ):
So /.well-known/acme-challenge works too.
But Letsencrypt requires an open port 80 and follows only redirect to port 80 or port 443.
Okay, so what is best way to solve this? My website can run on any port
Use the standard ports 80 / 443, not 8081.
Yess, another step further, port 443 works: http://www.bankofharry.nl:443 .
2 things open still:
it’s not yet secured.
would be nice if www.bankofharry.nl would redirect to 443.
Any hint to point me in the right direction? Thanks again!
This is http over port 443, not over port 80.
This is always bad. http isn't secure.
You need one VirtualHost port 80 with a http redirect (http status 301) to https.
And a VirtualHost port 443.
rg305
February 9, 2019, 7:56pm
17
You seem to be getting closer to solving this…
Now the site is missing the cert chain.
You should probably be using the fullchain.pem
file instead of the cert.pem
file.
https://www.ssllabs.com/ssltest/analyze.html?d=bankofharry.nl
[and the cert doesn’t cover the WWW name]
And even when ignoring that, it returns error 400.
Perhaps the wrong (or non-existent) document root is being used…
Guys, it’s fixed!
I tried so much things, and after your feedback, I started to understand a bit more about the fundamentals. So, I restored a snapshot I took from the VM of just before I started working on this, followed all steps described in https://gist.github.com/Helmi/68879e72d2221ef0be24fcd6776c0c97
and everything worked almost right away.
Or do you see still something wrong in one of the reports?
Thanks!
Hmm still one thing, I get message: NET::ERR_CERT_COMMON_NAME_INVALID
any idea?
I see, you have rechecked your domain via https://check-your-website.server-daten.de/?q=bankofharry.nl
Now most is good, port 80 and 443 works, correct redirects.
Only one thing: Your certificate
CN=bankofharry.nl
09.02.2019
10.05.2019
expires in 90 days bankofharry.nl - 1 entry
has only one domain name. So your www-version isn't secure.
Use the same command to create a certificate, but add both domain names:
-d bankofharry.nl -d www.bankofharry.nl
Then both connections are secure.