I would like to host my own web server with a domain name I purchased but my public IP isn’t static.

  • Feliberto@programming.dev
    link
    fedilink
    English
    arrow-up
    8
    arrow-down
    1
    ·
    1 year ago

    I use duckdns.org , but if you are trying to host a webpage I totally recommend using Cloudflare, Cloudflare tunnels and a reverse proxy like nginx.

    Setting it up may be a bit tricky, but it is a gamechanger. I followed Ibracorp’s guides and I had no problem.

  • hagerman@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    ·
    1 year ago

    I use a Cloudflare tunnel rather than a dynamic DNS provider. Some in the self hosting community are opposed to Cloudflare, but I appreciate the tools they provide (especially Zero Trust so I can put my self hosted apps behind Okta).

    • randy@lemmy.ca
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I’ve also been on freedns.afraid.org for many years. Back when I switched from dyndns, it wasn’t possible to get Let’s Encrypt certificates on afraid.org’s domains, but that might have changed. I worked around it by taking a domain I already owned and using a CNAME to point it at my afraid.org domain.

  • BetterNotBigger@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 year ago

    If you only need public access to things like HTTP or SSH you don’t necessarily need to run dynamic ip and just setup Cloudflare Tunnels. So far I haven’t needed to put anything public that doesn’t run on the provided tunnels.

    • starkcommando@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      Where are the settings for these tunnels located in Cloudflare? I was looking around the website last night but didn’t have any luck.

      • BetterNotBigger@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Look under the Zero Trust category and then once there you’ll see another menu item called Access. There you’ll find Tunnels, in addition to Tunnels you can add an Application in the same Access menu to create policies that only allow certain clients to connect.

    • valkyre09@vlemmy.net
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      1 year ago

      Cloudflare tunnels is the way to go for small self hosted content. You’re hiding behind their ddos protection and your IP / location remains hidden from end users.

  • theghostoutside_@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 year ago

    I use DuckDNS. There’s been only one outage for the ~2 years I’ve been using it and it’s free. I also use DuckDNS to acquire the SSL certificates for the reverse proxy.

      • axzxc1236@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        1 year ago

        If you mean automatically update IP part, duckdns website has a very comprehensive guide.

        If you mean getting a free SSL certificate, you can use acme.sh (this is what I used) which has integrated support for duckddns (To use let’s encrypt you need to use --server letsencrypt in your command)

    • nieceandtows@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I used duckdns for my jellyfin server, but after a week or so I started getting malicious site warnings from Firefox, and had to ‘accept the risk and continue’ every time. Ended up going back to noip. It’s a pain to renew every month, but I haven’t had any other problems with it.

      • Josh@lemm.ee
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        I use noip as well, but because I only have an IP camera on that network, and the camera has built-in DDNS support for noip. But I hate it having to renew monthly.

  • elscallr@kbin.social
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    1 year ago

    I just have a cron script running on a machine that does something like this every 10 seconds

    C_IP=`dig +short my.domain`
    IP=`curl https://api.ipify.org`
    if(C_IP != IP) {
        updateRoute53(IP)
    }
    
    

    This is just for my main home server. Gets the job done because if it’s out of date for a few seconds nothing matters.

  • IcerOut@kbin.social
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Before, I used to use duckdns. Completely free and super simple
    Nowadays I just have a docker container that updates my A records on my domain directly through namesilo’s API. Took like 5 mins to set up the config

  • Bristlerock@kbin.social
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    1 year ago

    DNS-O-Matic (recommended by CloudFlare, among others) combined with SWAG and Authelia will handle dynamic DNS, reverse proxying, SSL certificates, and MFA. SWAG (nginx, Let’s Encrypt and Certbot) and Authelia (MFA) run nicely in a 2 container Docker stack.

    Mine have been running for ~18 months on my NAS, though I have a fixed IP so no longer use a DDNS provider.