Hi all :)

I’ve got a media server set up running Navidrome, Calibre-Web, and Immich along with some other services, and want to get access to them from outside the house now. I’ve read that Caddy is good for securing things by making it easier to set up encryption, but I’m not sure I understand that side of things.

I’ve set up a Cloudflare tunnel for a Minecraft server, and I’ve got Tailscale installed but not set up with an exit server yet, but understand that Caddy would be better. I ideally want to set up apps on my wife’s phone so that she can access the libraries too.

Is it just a case of installing Caddy and setting up the services I want to share through it? That seems too easy, like I’ve missed something.

If it makes any difference, I’ve got a standard UK ISP router with a few ports forwarded, and I’m going to add an access point and then a LevelOne GEP-5070 managed switch to learn about things like VLANs. The link to the switch is here:

https://mayflex.com/shop/product/GEP-5070

I feel like I’m missing something, but can’t think what, so I’d be grateful for any help :)

    • Tippon@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      9 hours ago

      I thought that Sunshine and Moonlight were for screen sharing? I’ve only ever seen them used for gaming.

    • irmadlad@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      22 hours ago

      Pangolin is cool. Combines a lot of things you’d normally have to piece together. However, OP already has a secure, operating server. I’m just not sure where OP came to the conclusion to toss in Caddy into an already viable system.

      • Tippon@lemmy.dbzer0.comOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        9 hours ago

        Sorry, I’ve just replied to another comment before I saw yours. I didn’t realise that Cloudflare could deal with encryption on its own, I thought you needed something like Caddy to get certificates. I found out after seeing the other comment that one of my services running through the Cloudflare tunnel is encrypted, but I couldn’t get it to work in the past. I’m not sure what’s changed, but I’m going to give it a proper look once I’ve had some sleep.

        There’s something about the networking side of things that just throws me, and I struggle to get my head around it. If I can get things running through Cloudflare, I’ll be very happy :)

  • Possibly linux@lemmy.zip
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    20 hours ago

    Caddy supports mTLS so if your client apps support it you could put everything behind client certs (assuming your services support it)

    You also could use plain Wireguard since it might be simpler if you have the option to open up the firewall. I personally use netbird since I’m behind CG nat

    I would also deploy IPv6 since it will help a lot of performance on carrier grade Nat networks like mobile data.

    • Tippon@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      9 hours ago

      I’m still a bit confused with all of this so I might be getting things completely wrong. I thought that I needed to get certificates for anything that I wanted to make public with an URL, and that’s where I thought Caddy came in, but a few of the other replies have said that I can use the Cloudflare tunnel and let them sort out the encryption. That seems like it should be easier for me, as I’ve dealt with it already.

      IPv6 isn’t available through my ISP as far as I can tell, they only enable it locally through their router at the moment.

    • Tippon@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 hours ago

      Sorry about the slow reply. Don’t I need to be running Tailscale on the remote device then though? Ideally I want to be able to put a link into whichever app / program and be able to share that link with my wife and kid

        • Tippon@lemmy.dbzer0.comOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          9 hours ago

          I’m a bit dubious about running Tailscale on the family’s devices, as they’re not particularly techy, and will forget to launch it if it isn’t running for whatever reason, and then I get the blame.

          Wouldn’t all traffic go through it when it’s running too, or can you select which apps now? They’d mostly be using Android devices.

          • Brkdncr@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            ·
            9 hours ago

            It’s selective. You just provide the internal address or the Tailscale host name. All other traffic runs outside of the vpn tunnel.

            Honestly it takes 10 mins to set up you should try it out.

            • Tippon@lemmy.dbzer0.comOP
              link
              fedilink
              English
              arrow-up
              1
              ·
              9 hours ago

              Ah, that’s cool. I’ll give it a try once I’ve had some sleep, it’s been a long day. Thanks for the help :)

  • gedaliyah@lemmy.world
    link
    fedilink
    English
    arrow-up
    9
    ·
    1 day ago

    I use Tailscale. It’s much simpler. Just install it on the host and client devices and everything is securely connected.

    You may also be interested in Calibre Web Automated (which is similar but with more features)

    • Tippon@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 hours ago

      Sorry about the slow reply.

      This is where I get confused with Tailscale. Doesn’t everything then go through Tailscale, like when you run a VPN? Ideally I just want to be able to connect with a link and save that in the remote app / program, and also avoid having my wife forget to start Tailscale and shout at me >.<

      • gedaliyah@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        8 hours ago

        Yeah, it operates like a VPN. On my wife’s phone, I installed tailscale and set it as the “always on” VPN so that she never has to touch it. The same goes for computers. You can have it set as a startup app, and it should automatically connect every time.

        On some devices, if you want to use another VPN, it can get complicated.

        Tailscale only responds to the range of connections that it’s in charge of, so it doesn’t interfere with connecting to normal internet, etc.

  • irmadlad@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    22 hours ago

    You’ve got Cloudflare tunnels/Zero Trust and Tailscale. You’ve got it wrapped up. Honest Question: What makes you think Caddy would be better? I think adding Caddy would be adding more complexity to a system that is already got everything it needs to operate correctly. I’m not even sure what Caddy would bring to the table in this scenario.

    • Tippon@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      9 hours ago

      I just replied to your other comment before I saw this one, but I’ll post the reply here too for anyone who’s following the thread :)

      The main thing I’m still not sure of is Tailscale. I don’t know if I can just put my services behind an URL for my wife to add to her devices, as she’s unlikely to remember to run Tailscale before she listens to her music, for example.

      Sorry, I’ve just replied to another comment before I saw yours. I didn’t realise that Cloudflare could deal with encryption on its own, I thought you needed something like Caddy to get certificates. I found out after seeing the other comment that one of my services running through the Cloudflare tunnel is encrypted, but I couldn’t get it to work in the past. I’m not sure what’s changed, but I’m going to give it a proper look once I’ve had some sleep.

      There’s something about the networking side of things that just throws me, and I struggle to get my head around it. If I can get things running through Cloudflare, I’ll be very happy :)

      • irmadlad@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 hours ago

        I do appologize for not getting back sooner.

        through the Cloudflare tunnel is encrypted,

        Yes indeed

        I thought you needed something like Caddy to get certificates

        You can, and Caddy works well. It just didn’t make sense in this scenario. No worries, mate.

        but I’m going to give it a proper look once I’ve had some sleep.

        Well. I do have some notes tjat might help put the pieces together, if you get stuck.

        The main thing I’m still not sure of is Tailscale

        I use tailscale on the server as a overlay protective overlay, which could be accessed as well if needed,

    • Tippon@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 hours ago

      Huh, I didn’t know that! I’ve had the Cloudflare tunnel running for quite a while now, and tried getting something set up on https a few years ago, but couldn’t get it to work. I’ve just checked my Ombi service and it is encrypted. I don’t know what’s changed, but I’m going to have another look, thanks :)