Skip to content

wireguard: setup own vpn #216

Description

@0xlua

I want to replace my current bore setup with a more general VPN solution.

Right now my self-hosted services are hosted on ganymede (at home) and galileo (VPS), roughly depending on wether I need to access them outside of my home. There are some edge cases like Jellyfin, which I mostly use at home, but also want to share with other people. For this I use bore, but this frequently breaks and I want a more permanent and robust solution. I also don't want to rely on internet access for some stuff like Pocket-ID and Calendar sync. This is my current proposal to solve this:

Instead of splitting up where my core services are hosted, everything should be at home on ganymede. This way I can always access everything, when I'm home. Also at home *.lua.one should point to the LAN Address of ganymede: this can be achieved in OPNsense. This way I don't have to worry about CORS/CSRF, HTTPS and stuff like that, no matter if I'm home or not.

In this scenario, the role of galileo would be more of a relay or bastion, as it will serve as the sole point of entry into my LAN from outside. To achieve this, ganymede will connect to galileo via wireguard. I can then connect my clients outside my LAN to galileo to access everything at home.

For this to work, *.lua.one has to point to ganymedes wireguard IP inside the VPN, more research needed. I also want my phone, laptop, etc. to auto connect to the VPN, when I'm not connected to my home WiFi - so I don´t have to actively think about this.

The current *.lua.one public DNS entries will stay put, so I can still publish stuff on galileo:

  • various relays: syncthing, rustdesk, ...
  • jellyfin: reverse_proxy <ganymede_wireguard_ip>:<jellyfin_port> in caddy

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions