tailscale vs cloudflare tunnel? which is better a homelab - eviltoast

Hello I’ve been using cloudflare to get remote access for the couple apps I selfhost, but lately I’ve been hearing about the wonders of tailscale.

It seems that the free tier is enough for my use. Which would be a safe option to have remote access for my 3D printer? Also how are both in terms of privacy?

  • keyez@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    1
    ·
    1 year ago

    Is there a specific reason tailscale having all the same traffic opposed to cloudflare is a better option? I use cloudflare tunnels right now and figured them handling some of the data is better than me by myself.

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

      Tailscale shouldn’t be getting your data anyway. It’s a mesh VPN that directly connects devices after their auth server gives out certs and let’s clients know where to find another. If you’re not comfortable with using their server for this I’d suggest you look into the open source headscale server. I do remember it routing through their server in the rare case NAT punching doesn’t work

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

        Thanks for the info. Though I fail to see how it’s much different than cloudflare tunnels, I’ll probably stick with that for the near future but will try out tailscale funnel in the future.

        • Encrypt-Keeper@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          arrow-down
          1
          ·
          1 year ago

          It’s not functionally different from Cloudflare tunnels, that’s the point. You get the same functionality without giving all your data to a corporation.

          • keyez@lemmy.world
            link
            fedilink
            English
            arrow-up
            4
            arrow-down
            1
            ·
            1 year ago

            I’m curious how if they’re functionally the same, one has all the data and the other “shouldn’t be getting your data anyway”. Was mostly curious to hear about informed differences in the products but clearly not going to get that, cheers.

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

              You can selfhosted tailscale so that they don’t have any access. You can’t with cloudflare tunnels as far as I know. Tailscale’s client is open source, so is their Headscale server which originally was developed by a 3rd party. You can look into the code for that. Not sure what you’d want me to say. If you really want to be informed I’d inspect the code yourself

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

                I’m self hosting cloudflared right now, the TLS from cloudflare terminates in a container in my network and then goes to my reverse proxy container for my local network. I’m definitely going to poke around tailscale and their funnels for the future, I’m just playing devils advocate for those replying not knowing anything about cloudflare tunnels yet saying they’re the wrong choice.

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

                  Cloudflare tunnels definitely aren’t wrong, you’re just not entirely using open source software. It’s a very good option if you need to open things to the public or want to learn more about cloud services

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

              Because Cloudflare decrypts all your traffic, and Tailscale doesn’t. It’s still functionally the same though because you accomplish the game goal in a similar manner, but one is privacy respecting and one isn’t.

    • Encrypt-Keeper@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      1
      ·
      1 year ago

      Well like… if you’d rather put your data in the hands of a company instead of your own when you could easily do the same thing yourself, why are you self hosting in the first place?

      • keyez@lemmy.world
        link
        fedilink
        English
        arrow-up
        4
        arrow-down
        1
        ·
        1 year ago

        Just my two cents I’d prefer my traffic going through Cloudflare vs Tailscale if it’s all the same, since I’ve heard a lot about Tailscale but know nothing. I’ve interacted on Github threads with people from cloudflare and they’re all super nice and their blog posts and post-mortems are very insightful. Was curious to see if people had actual insight but appears it’s just auto cloudflare = bad.

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

          That’s the beauty of Tailscale, you don’t have to trust them, because they don’t MITM your data, unlike with Cloudflare. I’m sure the employees of Cloudflare are nice, but so are the employees of any company, good or bad. It’s not that Cloudflare is necessarily bad, but you’re putting them in a position of trust over the content of your data you send through them, as opposed to trusting no one.

          I’m sure most of the people who work for Google are very nice people, but people still switch to self hosting for the privacy and control over their own data, and the same goes for Cloudflare.

          • keyez@lemmy.world
            link
            fedilink
            English
            arrow-up
            3
            arrow-down
            2
            ·
            1 year ago

            Got any info on how cloudflare MITM and decrypts all traffic but tailscale doesn’t? Playing devils advocate and pointing out how not much you’re saying is making sense.

            • milkjug@lemmy.wildfyre.dev
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 year ago

              EncryptKeeper’s explanation is perfectly concise and informative if you have a cursory grasp of self hosting and networking.

              If it’s not making sense to you, I would suggest revisiting some of the technical fundamentals of self-hosting, which admittedly is quite an advanced topic that most people don’t, and do not need to care about.

              You would be equally well-served, perhaps more so (if you don’t really care about privacy or terms of service) by sticking to regular cloud services. The road to self-hosting is arduous and if done wrongly, causes you more harm than good. Especially if your technical foundation is not yet strong. Which your posts suggest is the case.

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

                I appreciate the thoughtful reply but my issue with their explanation is not in the concepts or how it operates but in the fact they stated that Cloudflare tunnels were not an option to choose despite proving they have no knowledge in how they are used or operate.

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

              Look man I get that you’re not very tech literate and as a hobbyist that’s perfectly ok but just because you don’t know much about technology doesn’t mean the technology doesn’t make sense. You wanted to know what’s different and I told you, you wanted to know how and I told you. If you still don’t understand something then you need to articulate that and ask an actual question. It took me years to earn a degree in network engineering I can’t just distill all of that knowledge into a single comment for you to cover every possible dependent piece of knowledge that you’re lacking because all you can communicate is “I don’t get it”. You have to be specific on what it is specifically that you’re not getting.

              I will indulge you again here under what might be a false assumption that you genuinely want to know the answer.

              Cloudflare MITMs your traffic because that’s how it was designed. Your traffic is encrypted to their servers, de encrypted, then reencrypted between Cloudflare and your server. They can see and modify any data you send through them. All your passwords, tokens, and personal information are readable by Cloudflare. Therefore there’s an incredible amount of trust you need to put in Cloudflare, and the security of their systems.

              Tailscale on the other hand has a service called funnel, which is a direct replacement to Cloudflare tunnels, however they differ in that Tailscale is a company with privacy and security as a priority and they accomplish the same goal as CF tunnels but their solution is designed to keep your data encrypted end to tend, from your client to your server. You therefore don’t need to place all that trust with Tailscale because they can’t see or modify your data even if they wanted to.

              Both services accomplish the task of proxying public traffic to your backend server, however CF opens up all your data, and Tailscale doesn’t. Think of them both like a postal service, except Cloudflare opens up all your mail and puts it into new envelopes before giving it to the carrier for delivery to your mailbox. A lot of us prefer the postal service that just leaves your mail sealed from origin to destination.

              • varsock@programming.dev
                link
                fedilink
                English
                arrow-up
                1
                arrow-down
                1
                ·
                edit-2
                1 year ago

                I apologize, I misread the chain of comments. Your explanation is perfectly adequate for someone who has a basic grasp on networking and VPN and tunnels and encryption.

                I would just like to add that if your endpoints communicate via an encrypted transport (HTTPS, SSH, etc) then doesn’t matter if cloudflare tries to inspect your packets. There would be 2 layers of encryption while traversing the public web, then 1 layer when traversing CF’s network.

                And to some, packet inspection is not a downside since they can offer more protection - but that is totally up to your attack vector tollerence

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

                  I would just like to add that if your endpoints communicate via an encrypted transport (HTTPS, SSH, etc) then doesn’t matter if cloudflare tries to inspect your packets. There would be 2 layers of encryption while traversing the public web, then 1 layer when traversing CF’s network.

                  Thats not how Cloudflare tunnels work. Your data is encrypted to Cloudflare’s network then decrypted. Then they encrypt a second connection between their server and yours via a connector service running in your server. It does matter if CF tries to inspect your packets because there is one layer of encryption over the internet, then briefly zero layers of encryption, then one layer of encryption while traversing CF network. I’m not aware of any product that Cloudflare provides that allows for them to tunnel your HTTPS traffic without them being able to decrypt your data to plain text.

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

                    hmm, I’m not sure I agree - or perhaps I didn’t explain myself well previously and caused confusion between us.

                    Yes I agree with you in your description of how cloudflare encrypts -> decrypts -> encrypts; they are allowing you to ride over their network. If you remove cloudflare from the picture entirely, then you just have the internet facing server.

                    What I’m saying is, if the client and endpoint (server) talk in an encrypted protocol, then cloudflare cannot MiTM the data, only the IP headers. This is similar if you were to connect to any ol’ website over an ISP’s network. If your session is not HTTPS, then your application data can be read. You can have encrypted sessions inside of CF tunnel-network-tunnel.

                    If your services support encryption, great. But you can also expose a wireguard endpoint so you have the following

                    wg client --(tunnel to CF)–> CF network --(tunnel to your server)–> wireguard server

                    the real advantage to CF tunnel is hiding your IP from the public internet, not poking any holes in your firewall for ingress traffic, and cloudflare can apply firewall rules to those clients trying to reach your server by DNS hostname.