this post was submitted on 24 Sep 2023
39 points (95.3% liked)

Selfhosted

40157 readers
463 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
 

Hi All,

Xpost from c/networking@lemmy.world

So since Reddit is out for me, I’m turning here to see if anyone has some insight or can comment on this. Anything you’ve got would be great!

Long and short, I made a quick decision and am now living in a “Spectrum Community” - whereby tenants are charged a fixed rate for Internet and TV and connect to a “mesh” network via captive portal where MAC addresses must be registered to the tennants. Everyone shares the same network, sorta, but it’s got that feature where no one can sniff each other (unless MAC addresses are registered to your name).

There’s some debate on posts regarding this, whether connecting your own gateway will cause an issue, but I would like to connect my own gateway / router. Now, I’d also like to port forward, as I run my own mail server, etc… which need this and a public IP address I can register with my domain in order for all the fun stuff to work.

I doubt I can connect the gateway / router and port forward as if the community were offering a “communal modem”, so the question becomes:

Can I defeat this “double NAT” by routing all traffic from MY gateway through a VPS? Then, can I tie my domain / proxy service to the public IP address of this VPS to make all my services work?

Other services I run: PiHole Unbound DNS resolving Emby Wireguard (for mobile access to PiHole) And other web based services

Again, thanks. Hopefully someone reads this and knows what I’m talking about. I believe in Lemmy.

top 11 comments
sorted by: hot top controversial new old
[–] SomethingBurger@jlai.lu 17 points 1 year ago* (last edited 1 year ago) (2 children)

Use Wireguard or whatever to create a VPN between your home and your VPS, put a reverse proxy on the VPS to route all incoming requests to your home server, and point your domain to the VPS.

[–] Oisteink@feddit.nl 4 points 1 year ago* (last edited 1 year ago) (1 children)

You can use a reverse proxy for TCP and HTTP(s), and do port forwarding for other services.
OpenVPN can be bridged as well so all devices attached to your ap/router can be on the same broadcast. I’d rate this as fairly advanced but it’s possible. See here for details

Edit: without a bridge you will have double NAT, but that’s not too much of an issue imo.

[–] tgrowl@lemmy.world 1 points 1 year ago (1 children)

So I think I'm running into this problem a bit now. The reverse proxy and everything TCP and HTTPS works. The mail server I'm still trying to figure out. I'm using Wireguard to tunnel, do you know how to "bridge" that up to the VPS so that ports I need open to listen for incoming SMTP are also being listened on on the VPS?

[–] Oisteink@feddit.nl 1 points 1 year ago

WireGuard don’t do bridge. But smtp is tcp on port 25 and can go though proxy.

Note: you’ll need a ptr record for your VPS IP, not all providers allow this. You’ll also need to make sure your vps provider don’t block port 25. (like digital ocean)

What’s your current setup? VPS with reverse proxy and WireGuard to your home server/network?

I tend to use haproxy and would just add a tcp frontend on port 25 and have the backend point to my home-server WireGuard IP and the port I run my smtp server. Or the local ip - if your lan subnet is in the allow section of what config on the VPs side

[–] tgrowl@lemmy.world 2 points 1 year ago

This is the solution I went with. Had to tinker a bit with the KeepAlive settings, but otherwise smooth sailing now! Thanks!

[–] Decronym@lemmy.decronym.xyz 5 points 1 year ago* (last edited 1 year ago) (1 children)

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

Fewer Letters More Letters
HTTP Hypertext Transfer Protocol, the Web
HTTPS HTTP over SSL
IP Internet Protocol
NAT Network Address Translation
SMTP Simple Mail Transfer Protocol
SSL Secure Sockets Layer, for transparent encryption
TCP Transmission Control Protocol, most often over IP
VPN Virtual Private Network
VPS Virtual Private Server (opposed to shared hosting)

[Thread #161 for this sub, first seen 24th Sep 2023, 13:15] [FAQ] [Full list] [Contact] [Source code]

[–] art@lemmy.world 5 points 1 year ago* (last edited 1 year ago)

Running a solution like Wiregaurd + VPS or Tailscale is probably your best solution. It'll be transparent for you and won't set off any red flags for the network.

I've run tailscale on a cellular home internet platform as well a shared one like you have and it was slick.

[–] drudoo@lemmy.world 4 points 1 year ago

I’ve had the exact same spectrum setup in Orlando and I just gave up connecting to local services. Had a VPS for my external stuff and things I wanted to reach away from home and then used a couple of local services when at home.

[–] brakenium@lemm.ee 4 points 1 year ago

Personally I use tailscale which should punch through double NAT. It's a wire guard based mesh VPN, but an exit node should make it a normal VPN

[–] melmi@lemmy.blahaj.zone 2 points 1 year ago* (last edited 1 year ago)

If you're already using Wireguard, it's super easy to add a VPS to your Wireguard network and route all traffic through it. Then you can port forward pretty easily using some iptables rules from the VPS public IP to an IP on the Wireguard network.

That said, doing it that way will involve routing all of your traffic through the VPS, which means you'll need a good low latency connection to your VPS. (You can set up split tunneling, but it's a bit of a hassle to do that and port forwarding.) An alternative would be to set up a reverse proxy on the VPS, and reverse proxy your VPN IP.

Any non-proxiable services probably shouldn't be exposed directly to the internet anyway, and you can simply expose them via VPN.