this post was submitted on 05 Nov 2023
58 points (95.3% liked)

Selfhosted

39964 readers
291 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

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?

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 18 points 1 year ago (1 children)

A VPN is going to offer better security. I would only use cloudflare if you need something to be open to the public. This is useful when you have non-technical users that aren't going to understand using a VPN.

[–] [email protected] 1 points 1 year ago

Just use CF with host restrictions. You can easily add which hosts should have access of you want to limit access further

[–] [email protected] 14 points 1 year ago (1 children)

Tailscale. Because it can do both. It functions as a mesh VPN for private access, but it also has Tailscale Funnel which does the same thing as Cloudflare tunnels but you don’t give all your traffic to Cloudflare

[–] [email protected] 3 points 1 year ago (2 children)

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.

[–] [email protected] 2 points 1 year ago (1 children)

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

[–] [email protected] 1 points 1 year ago (1 children)

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.

[–] [email protected] 1 points 1 year ago (1 children)

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.

[–] [email protected] 3 points 1 year ago (2 children)

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.

[–] [email protected] 1 points 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.

[–] [email protected] 1 points 1 year ago (1 children)

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

[–] [email protected] 2 points 1 year ago (1 children)

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.

[–] [email protected] 1 points 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

[–] [email protected] 1 points 1 year ago (1 children)

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?

[–] [email protected] 3 points 1 year ago (1 children)

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.

[–] [email protected] 2 points 1 year ago (1 children)

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.

[–] [email protected] 1 points 1 year ago (2 children)

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.

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago) (5 children)

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.

load more comments (5 replies)
[–] [email protected] 1 points 1 year ago (1 children)

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.

load more comments (1 replies)
[–] [email protected] 13 points 1 year ago* (last edited 1 year ago) (2 children)

Tailscale server can also be self-hosted, look into headscale.

~~From my own experience, I still can't setup headscale on my Android phone, I think latest tailscale APP fucked up setting custom server function.~~ Don't install from Google Play

[–] [email protected] 4 points 1 year ago (1 children)

been using headscale + android ts app for a few months now, no issues. i get the app via fdroid.

[–] [email protected] 5 points 1 year ago

Installed from F-Droid and it works without issue, thanks

[–] [email protected] 2 points 1 year ago

Thanks! That sounds exactly what I've been looking for. Will try it out and if it's too complicated I will use Tailscale.

[–] [email protected] 11 points 1 year ago (1 children)

If it's just you, and you're willing to install it on all your devices, Tailscale is the best option IMO. If you need to share things with others, use CF Tunnels.

[–] [email protected] 1 points 1 year ago

It's mainly just for me and my wife, I guess I can set it up for her.

[–] [email protected] 8 points 1 year ago

I like tailscale and have been testing it for a few months. I'm also using headscale as the control plane.

Unfortunately the android client is somewhat unreliable. It works most of the time but once in a while, connections to your tailnet will fail for a bit and require retries. If you ping a machine in your tailnet during this problem, it will show packet loss and then start working after a few pings. This unfortunately makes it difficult to have a reliable split DNS setup.

I've done everything to try and understand what happens without success. It seems like state is lost somewhere and a few packets flowing will fix it. Running a constant ping from Android to my tailnet "fixes" the problem, but is not a great workaround.

Just something to keep in mind before you jump headfirst.

[–] [email protected] 7 points 1 year ago (7 children)

You can just self-host Wireguard on an always-free Oracle cloud machine (or of course any other cloud host). It's quite easy to set up and there are open source Wireguard UIs and clients for any OS. I will never rely on a company like Tailscale or Cloudflare for something like this.

load more comments (7 replies)
[–] [email protected] 7 points 1 year ago* (last edited 1 year ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
CF CloudFlare
CGNAT Carrier-Grade NAT
DNS Domain Name Service/System
HTTP Hypertext Transfer Protocol, the Web
HTTPS HTTP over SSL
IP Internet Protocol
NAS Network-Attached Storage
NAT Network Address Translation
SSH Secure Shell for remote terminal access
SSL Secure Sockets Layer, for transparent encryption
TCP Transmission Control Protocol, most often over IP
TLS Transport Layer Security, supersedes SSL
VPN Virtual Private Network
VPS Virtual Private Server (opposed to shared hosting)

13 acronyms in this thread; the most compressed thread commented on today has 8 acronyms.

[Thread #262 for this sub, first seen 5th Nov 2023, 06:50] [FAQ] [Full list] [Contact] [Source code]

[–] [email protected] 7 points 1 year ago

Definitely Tailscale

[–] [email protected] 6 points 1 year ago

Tailscale also has the advantage that you easily access udp services, the last time I checked this was not really possible with cloudflare tunnels

[–] [email protected] 6 points 1 year ago (2 children)

Cloudflare hates VPNs, so when it comes to privacy, it's not really a contest.

[–] [email protected] 4 points 1 year ago (3 children)

Cloudflare ironically has a VPN-ish service that no one talks about called Cloudflare Warp.

[–] [email protected] 2 points 1 year ago

I sometimes use it to access piratebay since it't ban where I live.

load more comments (2 replies)
[–] [email protected] 1 points 1 year ago (1 children)

Wait, what’s this about them hating VPNs?

[–] [email protected] 2 points 1 year ago

I guess they mean that you get to solve many Captchas if you access Cloudflare-protected sites through a VPN.

[–] [email protected] 4 points 1 year ago (2 children)

What I enjoy with tailscale is that the traffic goes directly from the host to the client.

Since there is no cloud relay I can connect to all my services via tailscale, even on local network and it's not going to impact the speed.

This way I only have one setup that works the same way on local network or remotely but still have the local network speed when I am at home.

[–] [email protected] 1 points 1 year ago

That's amazing I thought it would slow down on lan. Since myy upload speed is really slow.

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago) (2 children)

discovered tailscale from this post and after reading their "how tailscale works" I was hoping to get some clarification from an activer user (you).

CF tunnels setup an outbound-only tunnel from my private network via cloudflared, I have no ingress holes in my firewall to access my services. cloudflared does all the proxying. Plus my IP changes monthly as I don't pay for a static one from my ISP. This "outbound-only" connection is resilient to that.

Tailscale is point-to-point (for data plane) connection and only the control plane is "hub and spoke". This sounds like I need to allow ingress rules on my private network so my server can be connected to? Is this true or where did I misunderstand?

load more comments (2 replies)
[–] [email protected] 3 points 1 year ago

You may want to check this out. This articles also explains TLS-termination and TLS-passthrough.

[–] [email protected] 3 points 1 year ago

Why not both?

I use tailscale for full access to network and cloudflare tunnels to specific access to a service

[–] [email protected] 3 points 1 year ago

Tailscale Funnel and Serve will also let you point services to the public. I only use tailscale for all of my access needs and it's perfect and easy to handle 👌

load more comments
view more: next ›