Help setting up a domain registered and served through no-ip.com

1. My Caddy version (caddy -version):

Freenas 11.2
root@caddy:/usr/local/www # caddy -version
Caddy (untracked dev build) (unofficial)

2. How I run Caddy:

Looking to set it up as a simple reverse proxy. Currently I’m accessing apps using
http://<ip address>/<app name> inside of my network. I plan on expanding this to leverage the domain that I own so I can access my apps from the web, outside of my network.

a. System environment:

Freenas 11.2 iocage jail

b. Command:

n/a

c. Service/unit/compose file:

n/a

d. My complete Caddyfile:

n/a

3. The problem I’m having:

In order to set up web access from outside of my network, I would like to leverage the Let’s Encrypt functionality of Caddy by adding

tls
{

}

to my Caddyfile. However, my domain is registered with no-ip because my ISP uses a dynamic IP address and I needed something to handle DDNS for me. Since my netgear router supported no-ip natively, I figured this was the easiest way to go long before I decided to set up a reverse proxy. So, I’m wondering if there’s a way for me to easily configure my Caddyfile to use no-ip. Or, if there are any other options available for me here aside from losing the money I paid no-ip and using some other agent-based solution running behind my router for DDNS. For example, can I configure a CNAME record on one of the supported DNS providers and configure my Caddyfile to point to the CNAME record which points back to the no-ip.com authoritative record thus preserving the current dynamic DNS setup that I have.

Here is a link to no-ip’s website listing out the requirements for the managed DNS service I subscribed to:

Please let me know if there’s any other info I can provide here.

4. Error messages and/or full log output:

n/a

5. What I already tried:

Since it looks like Cloudflare is a supported plugin, I tried changing name servers at no-ip to Cloudflare name servers. This broke DDNS as no-ip requires me to use their name servers for DDNS. I also tried adding two of Cloudflare’s servers to my name servers list in the no-ip dashboard but I think this ultimately leads to inconsistent behavior.

Hello, Welcome to Caddy.
I’m using no-ip and may help you.

I imagine at least you are using Caddy with the addition of SSL.
At a minimum, you will need to configure a netgear router in addition to the Caddy settings.

But in order for us to answer this,
you need a little more explanation in the environment configuration:

  • Is FreeNAS currently able to refer to http://<ip address>/<app name> ?
  • Is that <ip address> private? Or is it public?
  • When you refer tohttp://<ip address>/<app name>, do you see files etc. like a normal Web? Or does it reference files in Explorer?
  • What domain name is you trying to set to no-ip? (example.com, example.ddns.net or example.mynetgear.com)

These answers will give us concrete answers.

2 Likes

If my plugin recognition is correct, this seems wrong.
This means that if you are using Cloudflare DNS,
Let’s Encrypt will use that DNS when issuing certificates.
This plugin is not for DDNS.
(Is this correct because I’ve just been here recently?)

https://caddyserver.com/v1/docs/tls.dns.cloudflare

Hello and thank you for the speedy response!

I do, indeed, ready have a router configured for ddns and I have port forwarding already configured for a couple of things.

My other answers below:

  • Is FreeNAS currently able to refer to http://<ip address>/<app name> ?

Yes, except for the apps where the settings are more complicated than just “transparent” because I’ve not done enough research to understand why they’re not working.

  • Is that <ip address> private? Or is it public?

Currently, yes it is private. My goal was to get it working internally first, then configure it to my domain.

  • When you refer to http://<ip address>/<app name> , do you see files etc. like a normal Web? Or does it reference files in Explorer?

No files, I see the actual web applications like sabnzb, sonarr, radar, etc.

  • What domain name is you trying to set to no-ip? (example.com, example.ddns.net or example.mynetgear.com)

The same domain that is already configured to my router. Let’s call it ‘mycloud.mydomain.com

Please let me know if there’s anything else I can answer. I am pumped to hear I am not the only person that uses no-ip! 😂. I was getting nervous when I couldn’t find anybody talking about it on the forums.

I am not using Cloudflare DNS at all. However, the guides that I have seen on the Freenas forums are configured using Cloudflare. Since I couldn’t find a “no-ip” plug-in, I began trying to figure out how I could set up CNAME records in Cloudflare to leverage the Cloudflare plugin while keeping my Authoritative records at no-ip. The problem here is I am tied to DDNS. If I didn’t have to use it, I wouldn’t have paid no-ip.com and would have used something that integrates a little easier. It’s too late now so I’m really hopping you all are able to help!

Thanks for the reply. This will help others as well :smile:

Such an image is assumed…

(Outside) :computer: Access PC :heavy_minus_sign: :earth_asia:Internet :heavy_minus_sign::heavy_minus_sign: Router :heavy_minus_sign: Caddy - FreeNAS :house: (Servers)

The :heavy_minus_sign: part is SSL-enabled.
If you run Caddy on FreeNAS, that’s one, but it is this flow mechanically.

The router can set the private IP address to refer to the port number accessed from outside.
You will set this up on the Caddy server.
That way you can refer to it at http://mycloud.mydomain.com/<appname> instead of http://<ip address>/<app name>.You may try it first.

Once that is done, consider converting to SSL with a Caddy proxy.

Here is the procedure.

In this case, it seems unlikely that you need to use Cloudflare, but Cloudflare is very useful.
Most of my web is via Cloudflare. Its great features will be useful to know.

2 Likes

Thanks @balloon! Was the “Here is the procedure” meant to be a link? It doesn’t appear that it is.

So, I may have some confusion on how this is supposed to work. I had Nextcloud configured and accessible from the internet using nginx and Let’s Encrypt. I didn’t make any changes to my DNS when I configured this so I am guessing I don’t need to do it here either.

However, it’s my understanding that using a service like CloudFlare does improve security and performance.

That said, what’s the preferred path forward. The canned answer undoubtedly will be “it depend on what you want.” I want to be able to securely access my stuff and I want everyone else no to :slight_smile: . If I can get some good performance boosts while doing so, I would like to do that as well.

Is a TLS connection terminated at my Caddy server via Let’s Encrypt sufficient for these purposes?

I would say yes. For personal use, I don’t think Cloudflare is necessary. It’s very common to use Caddy as a reverse proxy for easy automatic TLS. I assume NextCloud is password protected as well.

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.