Duck DNS - Remote Access - Log Error

I’m trying to setup, remote access for my home assistant.

Followed this great guide - https://www.youtube.com/watch?v=AK5E2T5tWyM
But when I get to starting the Duck DNS add on and I check the log file I get this as the log.

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] done.
[services.d] starting services
[services.d] done.
# INFO: Using main config file /data/workdir/config
+ Account already registered!
[03:14:26] INFO: OK
92.23.99.50
NOCHANGE
[03:14:26] INFO: Renew certificate for domains: mydomain.duckdns.org and aliases: 
# INFO: Using main config file /data/workdir/config
+ Fetching account ID...
  + ERROR: An error occurred while sending post-request to https://acme-v02.api.letsencrypt.org/acme/new-acct (Status 400)
Details:
HTTP/2 400 
server: nginx
date: Sat, 03 Apr 2021 02:14:28 GMT
content-type: application/problem+json
content-length: 134
cache-control: public, max-age=0, no-cache
link: <https://acme-v02.api.letsencrypt.org/directory>;rel="index"
replay-nonce: "long id may be private so I removed"

{
  "type": "urn:ietf:params:acme:error:accountDoesNotExist",
  "detail": "No account exists with the provided key",
  "status": 400
}
rm: can't remove '/data/workdir/domains.txt': No such file or directory

My Duck DNS add on config is setup like this:

lets_encrypt:
  accept_terms: true
  certfile: fullchain.pem
  keyfile: privkey.pem
token: "token"
domains:
  - mydomain.duckdns.org
aliases: []
seconds: 300

I have the /config/configuration.yaml file updated with the below too.

http:
  base_url: mydomain.duckdns.org
  ssl_certificate: /ssl/fullchain.pem
  ssl_key: /ssl/privkey.pem

My port forwarding is also working too as I can type in my external IP and access it from there.

Any ideas?

1 Like

It appears to have an issue sending your token (account ID). I looked at my config and noticed that my token is not in quotes, maybe try to remove the quotes from your token as well? I believe the token is sent as JSON, so the quotes would also be sent too.

Hi, thanks for the response. I changed my actual token to “token” as I wasn’t sure if I should share this online.

In my config it’s not got the quotes around is just the token taken straight from Duck DNS

I understand! You definitely shouldn’t share your token online, lol. May I also suggest you remove the base_url data option from your http configuration? I looked at mine and I don’t have that parameter, and yes - I have active SSL through Duck DNS :smiley:

Done, but I still get the same error. :frowning:

How sad :frowning: Re-reading through the documentation and reviewing my own configuration, I can’t find anything wrong with the configs you posted. It appears that Let’s Encrypt isn’t able to verify your Duck DNS account via the token - and Duck DNS doesn’t have any type of support structure that I can find, so I’m not sure where you need to go from here. If you’ve verified your port forwarding settings and everything else seems to be in order, than it has to be a Duck DNS problem. I’m sorry, I wish I could have gotten this fixed for you!

IT’s working!! :smiley:

I just uninstalled and re-installed Duck DNS and used the same settings and it let me in. Thank you for replying as I gave up on this last night.

1 Like

How awesome! I’m glad you were able to get it working! :smiley:

1 Like

I followed that excellent video as well and got all the way to the part where you change the primary dns server address to the home assistant address. My router gives me an error, “This IP conflicts with the LAN IP subnet.” Not sure what I did wrong but any suggestions would be very helpful. I’m so close!