Files
racknerd/docs/SITE-SIDE.md
T
2026-07-15 17:58:23 -07:00

3.0 KiB

Site-side configuration (manual steps at Trochalakis and Oswald)

Everything the RackNerd box needs from the two sites, the DCs, and the Duo admin panel. Nothing here runs on the VPS.

1. WireGuard peers (both sites)

Add the RackNerd peer to each site's existing WG config. The sites initiate (RackNerd has the static IP) and keep the tunnel alive:

# Trochalakis WG box — add:
[Peer]                       # RackNerd hub
PublicKey = <RACKNERD_WG_PUBLIC_KEY>       # printed by host/setup.sh
Endpoint = vpn.atlashorizon.net:51820
AllowedIPs = 172.31.255.1/32, 172.31.8.0/24
PersistentKeepalive = 25

Oswald: identical block. Site WG interface addresses on the new mesh links: Trochalakis 172.31.255.2/32, Oswald 172.31.255.3/32 (add to the site [Interface] Address list if the WG box doesn't already carry an address in this transfer net).

Do NOT add the other site's LAN to the RackNerd peer's AllowedIPs — inter-site traffic stays on your existing direct tunnel. The mesh only adds 172.31.8.0/24 (roaming clients) and 172.31.255.1 (the hub) via RackNerd.

2. Return-path routing (both sites)

Hosts at each site must route the client subnet back via the site WG box. If the WG box is not the LAN default gateway, add static routes on the LAN router (or directly on the DCs):

Destination Via
172.31.8.0/24 site WireGuard box
172.31.255.1/32 site WireGuard box

Verify no asymmetry: tracert 172.31.8.10 from a DC must leave via the local WG box → RackNerd, never via the other site.

3. Windows Firewall / segmentation on the DCs

Allow from 172.31.8.0/24 (roaming clients, real source IPs): standard AD client ports — DNS 53, Kerberos 88/464, LDAP 389/636, SMB 445, RPC 135 + 49152-65535, NTP 123, GC 3268/3269.

Allow from 172.31.255.1/32 (the RackNerd host itself):

  • TCP/UDP 53 → AHDC01, AHDC03, AH-OSWLDC (Unbound forwarder queries)
  • TCP 636 → AHDC01, AHDC03 (Duo Auth Proxy LDAPS)

4. Active Directory

  • Sites and Services: create subnet 172.31.8.0/24 and assign it to the Trochalakis site (clients will then prefer AHDC01/AHDC03 for DC discovery).
  • Duo service account: plain domain user, read-only, no interactive logon rights; goes in .env as DUO_SVC_USER / DUO_SVC_PASSWORD.
  • Optional: a VPN Users security group if you want security_group_dn gating in the auth proxy.

5. LDAPS certificates

AHDC01 and AHDC03 need valid LDAPS certs (AD CS auto-enrollment or manually issued). Export the issuing CA chain as PEM → duo-authproxy/certs/ad-ldaps-ca.pem on the VPS (see that directory's README).

6. Duo Admin Panel

Applications → Protect an Application → OpenVPN (RADIUS). Copy the integration key, secret key, and API hostname into .env. Recommended policy: enrolled users only; new-user policy deny.

7. Public DNS

Create vpn.atlashorizon.net → RackNerd static IP (public registrar DNS, not AD). Used by roaming clients and both site WG endpoints.