this post was submitted on 10 Jul 2023
18 points (100.0% liked)

Selfhosted

46672 readers
339 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 2 years ago
MODERATORS
 

Hi folks, I'm just getting into this hobby thanks to the posts in this community. So far, I've installed Ubuntu server 22.04 on an old laptop and got paperless working, and I'm pretty pumped. Now I would like to access it outside of my home network on my phone.

I have a Netgear R7000 with Advanced Tomato installed. Here's my plan, but I don't know if it would work... So I'm hoping for a peer review of sorts.

  • Get openVPN working on the router as a server.
  • make a certificate for my phone and use it as a client.
  • use my fedora laptop as the CA (?).

I think I need to use easy-RDA to make the keys and certificates...

Does that sound about right? It's this a good approach or is there something better/easier/more effective?

If there's a great tutorial around for accessing the home network externally, I'd super appreciate it. Would obviously prefer to do it myself and not pay for a service... I've been enjoying the learning experience!

top 25 comments
sorted by: hot top controversial new old
[–] CeeBee@lemmy.world 11 points 2 years ago (4 children)

Tailscale

That's the only word you need. Ultimately, traditional VPN is outdated and almost obsolete. Wireguard is the "next iteration" of network tunneling tech. And Tailscale just makes it super simple.

[–] ablackcatstail@lemmy.goblackcat.com 4 points 2 years ago (1 children)

+1 for Tailscale because it uses the WireGuard protocol. Tailscale just adds additional features on top of the WireGuard base. That much said, I am more interested in Slack's Nebula project because it is completely open source. I like the approach Nebula is taking towards mesh networking. I'm just still struggling to get it working.

[–] MigratingtoLemmy@lemmy.world 0 points 2 years ago (1 children)

Tailscale using headscale is basically hosting your personal Tailscale network, which is nice and makes it open source too, just FYI

[–] Drudge@lemmy.world 1 points 2 years ago (1 children)

I just came across headscale...looks kinda neat. The docs have me a bit scared though - from the Installation section: "Configure Headscale by editing the configuration file"...uhm ya I'll just go configure all of the things to do all of the stuff, hehe.

[–] randomguy2323@lemmy.fmhy.ml 1 points 2 years ago (1 children)

Use chat gpt to help you install it , I used it sometimes and it help me to understand it a lot.

[–] Drudge@lemmy.world 1 points 2 years ago

Good idea...I just it a bunch for other stuff but hadn't thought to use it for this. Thanks!

[–] RelativeArea0@lemmy.world 3 points 2 years ago (1 children)

Omg its seems its working with cgnat, ill give this a try

[–] zampson@lemm.ee 1 points 2 years ago (1 children)

It's what I use to remote access to my Starlink network. Have it running on a little Linux box, and publishes my internal subnet so I can access any device on my network with Tailscale running on just one PC.

[–] RelativeArea0@lemmy.world 1 points 2 years ago

Neat, I'll admit that im a bit late with vpn bandwagon, I've been fiddling around with dynamic dns and prays to the network gods that my LAN wont encounter some replicating malware or nasty stuff (although im monitoring it and has logs). And yea, wow, this thing is fast and easy.

[–] Drudge@lemmy.world 1 points 2 years ago (1 children)

Really, wow ok. Someone recommended that in another post, and I thought there must still be some value to doing it myself.

So does all the traffic go through tailscale? I gotta watch a YouTube video...

[–] SeriousBug 1 points 2 years ago (1 children)

No all traffic goes peer-to-peer, it only uses Tailscale's servers for discovery and NAT traversal. Only if a peer-to-peer connection is impossible then Tailscale proxies the connection.

[–] jhulten 2 points 2 years ago

And it proxies encrypted data that it doesn’t have private keys to.

[–] Dark_Arc@lemmy.world 1 points 2 years ago* (last edited 2 years ago)

I'll pitch ZeroTier instead, it's the same concept, but it's more FOSS friendly, older, doesn't have the non-networking "feature bloat" of Tailscale, and can handle some really niche cases like Ethernet bridging (should you ever care).

Just:

  1. Go to their website, create an account, and create a network
  2. Add ZeroTier to the devices you need to connect
  3. Enter your network ID on those devices
  4. Approve the devices in the web control panel

If you want to go full self hosting, you can do that too but you will need something with a static IP to control everything (https://docs.zerotier.com/self-hosting/network-controllers/?utm_source=ztp) this would replace the web panel parts.

You can also do a LAN routing based solution pretty easily using something like a Raspberry Pi (or really any Linux computer).

[–] Max_P@lemmy.max-p.me 4 points 2 years ago (1 children)

You're mostly correct, but you don't need the laptop to act as a CA or anything. A CA is just a cryptographic key, you can generate them on the laptop, on the router, or wherever you want. All that matters is that the router and the clients agree on what the CA is.

Alternatively, you can port forward from the router to the laptop and run the VPN on the laptop itself. That will open you up to more VPN protocols such as WireGuard which is newer, works so much better, and a whole lot easier to get set up. That stuff just works. Or you can forward the SSH port, and use SSH forwarding using an app like JuiceSSH as the way to enter your network.

[–] Still@programming.dev 3 points 2 years ago (1 children)

I can vouch for wireguard it's super easy to setup

[–] rambos@lemmy.world 1 points 2 years ago (1 children)

Same here, but never tried tailscale or anything like that

[–] Drudge@lemmy.world 1 points 2 years ago (1 children)

So how does that work? Just using wireguard I mean.

[–] Still@programming.dev 1 points 2 years ago* (last edited 2 years ago)

there are 3 main steps depending on what OS is being run, but it basically goes like this

port forward some port to a maching on your home network,

create a wireguard config through network manager if you're using that or the wg-quick command, make sure it auto connects

3 mess with the firewall so that your devices on the wireguard network can see your home network

there are tons of easy to follow guides out there, this is the one I followed

[–] Drudge@lemmy.world 3 points 2 years ago (1 children)

Big thanks to everyone that replied. Message received: ditch openVPN in favour of wireguard :-)

[–] Drudge@lemmy.world 3 points 2 years ago* (last edited 2 years ago) (1 children)

Uhm, status update: I just signed up for tailscale, and I'm able to access my home server after about 2 mins from first logging into the tailscale website. Wow...you guys weren't kidding 🙃

So what should I do next?

[–] Bread@sh.itjust.works 1 points 2 years ago (1 children)

Nas, Media server, device auto backups to nas, game server, chatgpt instance, Lemmy instance, a website, wiki, nextcloud, pihole, or home assistant.

If you intend to collect/store data or make more servers, a nas would probably be a good idea to have.

[–] Drudge@lemmy.world 2 points 2 years ago

Ok, I have an incoming Lenovo M93P SFF to upgrade my really old laptop as a server, so your list will be super helpful. Thanks!

I personally am a fan of DIY when it comes to VPN. Check out Nebula. I'm working on building a Nebula-based network. Right now I'm using WireGuard tunnels. Pure WireGuard is diificult to scale but it does operate well scaled up.

load more comments
view more: next ›