Selfhosted
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:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
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.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
view the rest of the comments
I use anydesk for a single pc2pc connection and lately it's been popping up with a 60 second ad saying like "we're glad you are using it and you should start paying for a business license." I use it about once every couple weeks. Like I'm not paying for your shit for a few times a month use.
I use teamviewer to access a relative's computer when she needs help, and it's the same nagware. Like okay, I understand there are cloud costs. But where exactly are they here? I am a row in a database, you store my credentials and probably a couple of keys. All data is between the host computer and me, there's no processing of any kind there. Why exactly should I pay you monthly? There's no value benefit.
Convenience (after you install it, all you have to do is enter the code and you're connected, no other setup required), familiarity (it's the default name people will think of or find if they want remote access - that alone means they can get away with pushing their users slightly more) and - IMHO most importantly - connectivity: if two computers can connect to the TeamViewer servers, they will be able to connect to each other.
That's huge in the world of broken Internet where peer to peer networking feels like rocket science - pretty much every consumer device will be sitting behind a NAT, which means "just connecting" is not possible. You can set up port forwarding (either manually or automatically using UPnP, which is its own bag of problems), or you can use IPv6 (which appears to be currently available to roughly 40% users globally; to use it, both sides need to have functional IPv6), or you can try various NAT traversal techniques (which only work with certain kinds of NAT and always require a coordinating server to pull off - this is one of the functions provided by TeamViewer servers). Oh, and if you're behind CGNAT (a kind of NAT used by internet providers; apparently it's moderately common), then neither port forwarding or NAT traversal are possible. So if both sides are behind CGNAT and at least one doesn't have IPv6, establishing a direct link is impossible.
With a relay server (like TeamViewer provides), you don't have to worry about being unable to connect - it will try to get you a direct link, but if that fails, it will just act as a tunnel and pass the data between both devices.
Sure, you can self host all this, but that takes time and effort to do right. And if your ISP happens to use CGNAT, that means renting a VPS because you can't host it at home. With TeamViewer, you're paying for someone else to worry about all that (and pay for the servers that coordinate NAT traversal and relay data, and their internet bandwidth, neither of which is free).
Tailscale is piss easy to install and set up and works just fine for making a direct link from a CGNATed connection.
Right, now get a borderline computer-illiterate person to connect to your network, ensure their firewall isn't misconfigured to block all incoming traffic (with TeamViewer, this configuration would still work because the device just connects to the TV server) and open and set up a completely separate screen sharing program.
I know none of these steps are difficult if you have any idea what you're doing, but I've met plenty of people who would most likely need assistance going through the motions. Funnily enough, the best way to do it remotely would probably be to get them to install TeamViewer to then set this up for them remotely.
By the way, as far as networking goes, Tailscale does the same thing TeamViewer does, just for a VPN instead of a screen sharing application - it will try to do all the NAT punchthrough techniques and IPv6 connection and fall back on tunneling through relay servers if all else fails. It's not any more of a direct connection than TV.