Recommendation: Tailscale VPN

picklestehbutt@lemmy.world to Selfhosted@lemmy.world – 87 points –

tailscale.com

I have been using Tailscale VPN with my servers for about 6 months now and I would recommend it to anyone.

I'm running it on both of my Proxmox machines, my laptop, a raspberry pi, and my Android phone. It makes it super easy and secure to access my local services while away from my house.

Very simple set up, minimal initial configuration, and versatile.

There are apps for Linux, Windows, Mac, Android, and iOS.

Is anyone else currently using Tailscale? I'd like to hear what you all think.

62

You are viewing a single comment

What is the benefit of this over just running Wireguard?

It's a mesh network unlike plain Wireguard, and it's much easier to set up (with the caveat that there's a third party involved to coordinate connections and stuff)

I still don’t fully understand the benefit over plain WireGuard for a home lab use case…

I set up wg-easy (WireGuard socket container with built in web interface to easily generate certs for clients) in about 5 minutes on an odroid (like a raspberry pi). Opened a single port on my router. Generated certs for my phone and laptop using the web interface in about 30 seconds. Changed one line in my client configs to only route network on my home’s IP range over the VPN so I can connect without disrupting my internet connection. Then I just activate the VPN and I can access all of my home services. (writing all that out kind of makes it sound complicated but literally this was done in like 10 minutes total and never had to touch it again except to log into the web admin to make certs for new clients occasionally)

Since Tailscale is a mesh VPN like Nebula, wouldn’t I need to install and set it up on all of my servers and VMs instead of just one to access everything? And then every new VM I make I would have to manually set that up too? Wouldn’t that be harder to setup over all than a single wg-easy container?

I feel like maybe I don’t fully understand how Tailscale works because it never seemed more convenient or better than vanilla WireGuard and it just uses WG protocol under the hood anyway but with the added dependency of a 3rd party service I have to trust and that can go down disabling my access to my home network…

For Tailscale you just have to install it, start the service, and log in. If you want to install it on just one server and have it act as a gateway to the rest of your network, you can use subnet routers.

Interesting… I also saw some people post about the self hostable open source version Headscale, so I’m going to play around with it. Tailscale gets recommended so often there must be something to it, I was just always put off by having to rely on a company to access my personal stuff which is sort of the whole reason I self host in the first place… but if I can self host the Tailscale coordinator that changes things.

I’ve been happy with vanilla WireGuard for my use case but it’s always nice to learn about other options.

I don’t think I can edit comments, but I meant to say we-easy is a WireGuard docker container, not a “socket” container lol

Elegant, easy to use web based admin panel. Google authentication. Exit nodes (routing all traffic through a peer). Subnet routes. Funnels. It's the best tech I've used lately.

The main benefit is it can punch thorough double NATs. Can't use wireguard if you can't even see your wireguard server when you have a shitty ISP that put their customers behind CGNAT.

Not trying to defend CGNAT because I hate it, but as someone who works for what most of you would consider a "good ISP", we use it simply because don't have enough IP addresses to do 1:1 NAT for every connection, and buying the amount of IP addresses required to do so would literally cost us somewhere in the neighborhood of ~4 million dollars - on top of the headache that we don't know the history of these IP addresses which could cause issues if they are on blacklists, etc.

I understand if it's due to inability to procure more ipv4 blocks as long as the ISP also supports ipv6 properly. Many of those shitty ISPs do not even have that option though.

Yeah, we have a full IPv6 deployment on our entire network and have for a many years now. We're a small rural regional coop so we make an effort to do right by our members the best we can. And for the members who really need a rout-able IPv4 IP, we do have limited blocks we can assign to interfaces if they request it.

Then it's not a shitty ISP. My precious ISP not only put that customer behind CGNAT, the CGNAT's IP addresses they use have poor reputation too so their customers sometimes get caught in captcha hell (very annoying when cloudflare doesn't like you because every other sites are behind cloudflare now), doesn't provide static IP address even when I asked to pay for it, and don't even provides IPv6. The only saving grace was 1:1 download/upload ratio, and they implemented government-mandated block list half-assedly (Reddit is banned in my country) so it's easy to circumvent. Once another ISP covered my area, I immediately jumped ship.

The new ISP also has problem with IPv4 allocation. Sometimes I got assigned behind a CGNAT, but restarting the modern is usually enough to get assigned into a publicly routable IPv4. And they actually have IPv6 so the CGNAT isn't as much of an issue. The drawback is asymmetric download/upload speed, and they implemented the government-mandated block list more competently (transparently hijacking all DNS requests, throttling DoH, ip-blocking some blocked websites, sniffing http host header and block it if the website is banned, etc) so I have a bit harder time to unblock everything.

Wow, that sounds like pretty awful internet conditions. What country do you live in if you don't mind me asking?