network/README.md
2024-11-03 10:29:23 +01:00

28 lines
1,009 B
Markdown

# `network.tjo.cloud`
Handling networking between nodes and between virtual machines.
# Architecture
<img align="left" src="docs/arhitecture.excalidraw.svg">
__WAN interface__ either represents an actual public interface (on Hetzner) or an interface in home LAN that has port-forwarded ports to it from home router.
__LAN interface__ is an ordinary lan network.
__ingress.tjo.cloud__ has port-forwarded all public ports to it (22, 25, 80, 443, 587 etc.). No other VM is accessible from the internet.
__network.tjo.cloud__ establishes Tailscale VPN connection between other network.tjo.cloud VMs. Using subnet routing it makes it possible that each VM can connect to all other VMs on any Proxmox host.
# Setting up new Host
### 1. Add new device to terraform.tfvars.
### 2. Manually configure vmbr0 and use import to import it.
### 3. Deploy terraform and manually install OPNsense via console.
### 4. Manually configure Tailscale.
Ref: https://tailscale.com/kb/1097/install-opnsense
### 5. Done!