# Error getting SSL certificate

**URL:** <https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623>\
**Category:** Help\
**Created:** [March 28, 2022, 2:17pm UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623 "2022-03-28T14:17:31Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![doubleoseverin](https://avatars.discourse-cdn.com/v4/letter/d/898d66/32.png) [@doubleoseverin](https://community.letsencrypt.org/u/doubleoseverin)\
**Post date:** [March 28, 2022, 2:17pm UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/1 "2022-03-28T14:17:31Z")

</div>

Hi there. I wonder if you can help me out. I have a Raspberry Pi 2 that I'm trying to create an SSL on. Possibly the error is to do with the fact that I have an SSL certificate with [godaddy.com](http://godaddy.com), for [severindouble.com](http://severindouble.com), that doesn't expire till the 21st of May 2022. I followed the Debian 9 instructions with apache. Below is also the error message I got from running hello-world. The domain name is also with godaddy, but I have re-directed it to the Pi which works, but reveals the ip address. Another task to sort out!

My domain is: [severindouble.com](http://severindouble.com)

I ran this command: hello-world

It produced this output:

ERROR: ld.so: object '/usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so' from /etc/ld.so.preload cannot be preloaded (cannot open shared object file): ignored.  
Hello World!

I ran this command: sudo certbot --apache -v

It produced this output:

Saving debug log to /var/log/letsencrypt/letsencrypt.log  
Plugins selected: Authenticator apache, Installer apache  
Please enter the domain name(s) you would like on your certificate (comma and/or  
space separated) (Enter 'c' to cancel): Requesting a certificate for [severindouble.com](http://severindouble.com)  
Performing the following challenges:  
http-01 challenge for [severindouble.com](http://severindouble.com)  
Waiting for verification...  
Challenge failed for domain [severindouble.com](http://severindouble.com)  
http-01 challenge for [severindouble.com](http://severindouble.com)

Certbot failed to authenticate some domains (authenticator: apache). The Certificate Authority reported these problems:  
Domain: [severindouble.com](http://severindouble.com)  
Type: unauthorized  
Detail: Invalid response from [http://severindouble.com/.well-known/acme-challenge/fft85mGVjrhAIKfPi9w2Y0q6tuDyvttQwNh0onrjv9I](http://severindouble.com/.well-known/acme-challenge/fft85mGVjrhAIKfPi9w2Y0q6tuDyvttQwNh0onrjv9I) [15.197.142.173]: 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.

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

My web server is (include version): Apache 2.4.52

The operating system my web server runs on is (include version): Linux raspberrypi 5.10.103-v7+

My hosting provider, if applicable, is: N/A

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): 1.25.0

---

<div class="post-metadata">

**Author:** ![rg305](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/rg305/32/91314_2.png) [@rg305](https://community.letsencrypt.org/u/rg305)\
**Post date:** [March 28, 2022, 2:51pm UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/2 "2022-03-28T14:51:07Z")

</div>

Hi @doubleoseverin, and welcome to the LE community forum 🙂

Please show the output of:  
`apachectl -t -D DUMP_VHOSTS`

---

<div class="post-metadata">

**Author:** ![doubleoseverin](https://avatars.discourse-cdn.com/v4/letter/d/898d66/32.png) [@doubleoseverin](https://community.letsencrypt.org/u/doubleoseverin)\
**Post date:** [March 29, 2022, 1:33pm UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/3 "2022-03-29T13:33:50Z")

</div>

Here you go:

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message  
VirtualHost configuration:  
\*:80 127.0.1.1 (/etc/apache2/sites-enabled/000-default.conf:1)

---

<div class="post-metadata">

**Author:** ![9peppe](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/9peppe/32/31596_2.png) [@9peppe](https://community.letsencrypt.org/u/9peppe)\
**Post date:** [March 29, 2022, 2:21pm UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/4 "2022-03-29T14:21:54Z")

</div>

It looks like your apache isn't configured to serve a website at all.

It just stays there serving something on localhost.

---

<div class="post-metadata">

**Author:** ![MikeMcQ](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/mikemcq/32/52772_2.png) [@MikeMcQ](https://community.letsencrypt.org/u/MikeMcQ)\
**Post date:** [March 29, 2022, 2:53pm UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/5 "2022-03-29T14:53:12Z")

</div>

Your domain `severindouble.com` has DNS pointing to AWS Elastic Load Balancer connected to an EC2 instance.

That is not the right domain name or DNS entries to reach your Raspberry Pi

```nohighlight
Name: severindouble.com
Address: 15.197.142.173
Name: severindouble.com
Address: 3.33.152.147

```

And this:

```nohighlight
curl -i severindouble.com/.well-known/acme-challenge/Test123

HTTP/1.1 404 Not Found
Date: Tue, 29 Mar 2022 14:51:05 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 48
Connection: keep-alive
Server: ip-10-123-122-155.ec2.internal
X-Request-Id: 87d0770b-007f-465e-9c1c-04b5992f35b3

```

---

<div class="post-metadata">

**Author:** ![doubleoseverin](https://avatars.discourse-cdn.com/v4/letter/d/898d66/32.png) [@doubleoseverin](https://community.letsencrypt.org/u/doubleoseverin)\
**Post date:** [March 29, 2022, 3:19pm UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/6 "2022-03-29T15:19:39Z")

</div>

Ok, so how do I sort all this out. The website is accessible over the internet as I have port forwarded the raspberry pi. Thanks for all your help thus far

---

<div class="post-metadata">

**Author:** ![MikeMcQ](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/mikemcq/32/52772_2.png) [@MikeMcQ](https://community.letsencrypt.org/u/MikeMcQ)\
**Post date:** [March 29, 2022, 3:33pm UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/8 "2022-03-29T15:33:55Z")

</div>

> [@doubleoseverin](#):
>
> Ok, so how do I sort all this out.

Not sure. Do you need an ELB and EC2 involved? Could you just point the DNS to your Pi?

If you do need that there may be a problem with your redirects for Let's Encrypt. You redirect requests for [http://severindouble.com](http://severindouble.com) to an IP address. BUT, requests to the /.well-known/acme-challenge URL I showed above to not redirect to that IP so do not reach your Pi.

Also though, Let's Encrypt will follow redirects but not for IP addresses - only domain names.

Does this help?

---

<div class="post-metadata">

**Author:** ![rg305](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/rg305/32/91314_2.png) [@rg305](https://community.letsencrypt.org/u/rg305)\
**Post date:** [March 30, 2022, 12:00am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/9 "2022-03-30T00:00:54Z")

</div>

> [@9peppe](#):
>
> It just stays there serving something on localhost.

127.0.1.1 is close to home [but not exactly home "127.0.0.1"]

Agreed that 127.\* IPs can only be reached by other 127.\* IPs [and only locally].

---

<div class="post-metadata">

**Author:** ![9peppe](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/9peppe/32/31596_2.png) [@9peppe](https://community.letsencrypt.org/u/9peppe)\
**Post date:** [March 30, 2022, 12:02am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/10 "2022-03-30T00:02:04Z")

</div>

Home is `127.0.0.0/8` 😉

---

<div class="post-metadata">

**Author:** ![rg305](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/rg305/32/91314_2.png) [@rg305](https://community.letsencrypt.org/u/rg305)\
**Post date:** [March 30, 2022, 12:02am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/11 "2022-03-30T00:02:43Z")

</div>

That's a really BIG home!  
If you check your `/etc/hosts` file, I think you might find a smaller home.

> [@9peppe](#):
>
> localhost

= ?

---

<div class="post-metadata">

**Author:** ![9peppe](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/9peppe/32/31596_2.png) [@9peppe](https://community.letsencrypt.org/u/9peppe)\
**Post date:** [March 30, 2022, 12:06am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/12 "2022-03-30T00:06:09Z")

</div>

Yeah, the literal `localhost` name might point to only a couple of those. IPv6 doesn't have such big homes, anyway.

Each service might chose an address in that /8. (I mean, systemd-resolved listens on 127.0.0.53 or something like that)

Another unclear thing is where am I connecting when I go to [http://0.0.0.0](http://0.0.0.0) 😃 (that's supposed to mean... any?)

---

<div class="post-metadata">

**Author:** ![rg305](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/rg305/32/91314_2.png) [@rg305](https://community.letsencrypt.org/u/rg305)\
**Post date:** [March 30, 2022, 12:08am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/13 "2022-03-30T00:08:05Z")

</div>

> [@9peppe](#):
>
> where am I connecting when I go to [http://0.0.0.0](http://0.0.0.0)

That actually connects?

---

<div class="post-metadata">

**Author:** ![9peppe](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/9peppe/32/31596_2.png) [@9peppe](https://community.letsencrypt.org/u/9peppe)\
**Post date:** [March 30, 2022, 12:09am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/14 "2022-03-30T00:09:01Z")

</div>

It's only ever used by daemons that run on your local machine. I don't know why it works, tho.

---

<div class="post-metadata">

**Author:** ![rg305](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/rg305/32/91314_2.png) [@rg305](https://community.letsencrypt.org/u/rg305)\
**Post date:** [March 30, 2022, 12:15am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/15 "2022-03-30T00:15:34Z")

</div>

It's a "trick" [some kind of "alias"].  
`0.0.0.0` = `0`

```nohighlight
ping 0.0.0.0
PING 0.0.0.0 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.020 ms

ping 0
PING 0 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.025 ms

ping 0.0.0.1
connect: Invalid argument

```

---

<div class="post-metadata">

**Author:** ![9peppe](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/9peppe/32/31596_2.png) [@9peppe](https://community.letsencrypt.org/u/9peppe)\
**Post date:** [March 30, 2022, 12:18am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/16 "2022-03-30T00:18:48Z")

</div>

Yep, it's some "come on, really?" situation.

> <https://superuser.com/questions/1307050/how-does-the-os-resolve-a-request-to-connect-to-0-0-0-0>

---

<div class="post-metadata">

**Author:** ![rg305](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/rg305/32/91314_2.png) [@rg305](https://community.letsencrypt.org/u/rg305)\
**Post date:** [March 30, 2022, 12:22am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/17 "2022-03-30T00:22:36Z")

</div>

Pinging any number lower than 1.0.0.0 returns "Invalid argument"  
But all IPs can be represented in decimal format...  
So, 1.0.0.0 = (1\*256^3)+(0\*256^2)+(0\*256)+0 = 16777216

```nohighlight
ping 16777216
PING 16777216 (1.0.0.0) 56(84) bytes of data.
64 bytes from 1.0.0.0: icmp_seq=1 ttl=54 time=5.79 ms
64 bytes from 1.0.0.0: icmp_seq=2 ttl=54 time=4.84 ms
^C
--- 16777216 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 4.842/5.316/5.790/0.474 ms

ping 16777215
connect: Invalid argument

```

But somehow "zero" is the exception to that rule.

---

<div class="post-metadata">

**Author:** ![9peppe](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/9peppe/32/31596_2.png) [@9peppe](https://community.letsencrypt.org/u/9peppe)\
**Post date:** [March 30, 2022, 12:28am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/18 "2022-03-30T00:28:09Z")

</div>

~~That's a bug.~~ All other IPs in 0.0.0.0/8 are valid (albeit meaningless)

(No, not really, they're only valid as a source)

> **[RFC 6890 - Special-Purpose IP Address Registries](https://datatracker.ietf.org/doc/html/rfc6890#section-2.2.2)**
>
> Special-Purpose IP Address Registries (RFC )

```nohighlight

              +----------------------+----------------------------+
              | Attribute | Value |
              +----------------------+----------------------------+
              | Address Block | 0.0.0.0/8 |
              | Name | "This host on this network"|
              | RFC | [RFC1122], Section 3.2.1.3 |
              | Allocation Date | September 1981 |
              | Termination Date | N/A |
              | Source | True |
              | Destination | False |
              | Forwardable | False |
              | Global | False |
              | Reserved-by-Protocol | True |
              +----------------------+----------------------------+

                    Table 1: "This host on this network"

                    

```

---

<div class="post-metadata">

**Author:** ![rg305](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/rg305/32/91314_2.png) [@rg305](https://community.letsencrypt.org/u/rg305)\
**Post date:** [March 30, 2022, 12:34am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/19 "2022-03-30T00:34:07Z")

</div>

> [@9peppe](#):
>
> `"This host on this network"`

By definition: It is **MORE** than localhost.  
Although one can argue it must be within this localhost (since that network is not routable).

---

<div class="post-metadata">

**Author:** ![rg305](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/rg305/32/91314_2.png) [@rg305](https://community.letsencrypt.org/u/rg305)\
**Post date:** [March 30, 2022, 12:36am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/20 "2022-03-30T00:36:13Z")

</div>

There should be some distinction between an "empty" and a "zero" IP address.  
But I suppose representing "empty" in an integer field would be "zero".

---

<div class="post-metadata">

**Author:** ![9peppe](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/9peppe/32/31596_2.png) [@9peppe](https://community.letsencrypt.org/u/9peppe)\
**Post date:** [March 30, 2022, 12:36am UTC](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623/21 "2022-03-30T00:36:48Z")

</div>

Yes, it's a lot more than localhost, when used as a source.

As a source 0.0.0.0 means _any address on any interface_ for this host.

And it looks like every other IP in 0.0.0.0/8 means the same.

[Next page](https://community.letsencrypt.org/t/error-getting-ssl-certificate/174623.md?page=2)
