Files
michaelschiemer/docs/deployment/VPN-ROUTING-FIX.md

121 lines
2.8 KiB
Markdown

# VPN Routing Fix f?r Grafana - Schritt-f?r-Schritt
## Problem
Grafana gibt 403-Fehler, obwohl VPN verbunden ist. Traefik sieht ?ffentliche Client-IP (`89.246.96.244`) statt VPN-IP (`10.8.0.7`).
## L?sung: DNS auf VPN-DNS setzen
### Schritt 1: Pr?fe aktuelle DNS-Konfiguration
**Windows:**
```powershell
# In PowerShell (als Administrator)
Get-DnsClientServerAddress | Select-Object InterfaceAlias, ServerAddresses
```
**Linux:**
```bash
cat /etc/resolv.conf
# oder
resolvectl status
```
**Mac:**
```bash
scutil --dns | grep nameserver
```
### Schritt 2: DNS-Test
```bash
# Teste DNS-Aufl?sung
dig +short grafana.michaelschiemer.de
# Oder
nslookup grafana.michaelschiemer.de
# Falls das 94.16.110.151 zur?ckgibt (?ffentliche IP) ? Problem!
# Sollte 10.8.0.1 zur?ckgeben (VPN-IP) ? OK!
```
### Schritt 3: WireGuard Config pr?fen
?ffne deine WireGuard-Config und pr?fe:
```
[Interface]
DNS = 10.8.0.1
[Peer]
AllowedIPs = 10.8.0.0/24
```
**Wichtig:** `DNS = 10.8.0.1` MUSS gesetzt sein!
### Schritt 4: WireGuard-Verbindung neu starten
1. Trenne die VPN-Verbindung
2. Starte sie neu
3. Pr?fe ob DNS jetzt 10.8.0.1 ist
### Schritt 5: DNS erneut testen
```bash
dig +short grafana.michaelschiemer.de @10.8.0.1
# Sollte zur?ckgeben: 10.8.0.1
```
### Schritt 6: Browser testen
1. **Browser-Cache leeren** (oder Inkognito-Modus verwenden)
2. ?ffne: `https://grafana.michaelschiemer.de`
3. Sollte jetzt funktionieren!
## Alternative: Hosts-Datei verwenden (tempor?r)
Falls DNS nicht automatisch funktioniert:
**Linux/Mac:**
```bash
sudo sh -c 'echo "10.8.0.1 grafana.michaelschiemer.de" >> /etc/hosts'
```
**Windows:**
```
# Als Administrator: C:\Windows\System32\drivers\etc\hosts
10.8.0.1 grafana.michaelschiemer.de
```
## Pr?fen ob es funktioniert
Nach dem Fix solltest du:
1. VPN verbunden haben
2. DNS zeigt 10.8.0.1 f?r grafana.michaelschiemer.de
3. Browser zeigt Grafana-Login statt 403-Fehler
## Server-Side Pr?fung
Auf dem Server kannst du pr?fen, welche Client-IP Traefik jetzt sieht:
```bash
ssh deploy@94.16.110.151
cd ~/deployment/stacks/traefik
tail -5 logs/access.log | grep grafana
```
**Vor dem Fix:** `ClientAddr: 89.246.96.244` (?ffentliche IP)
**Nach dem Fix:** `ClientAddr: 10.8.0.7` (VPN-IP)
## Warum funktioniert das?
- Wenn DNS auf `10.8.0.1` zeigt, wird `grafana.michaelschiemer.de` auf `10.8.0.1` aufgel?st
- Der Browser sendet die Anfrage an `10.8.0.1` (VPN-Server)
- Der Traffic geht ?ber das VPN-Interface
- Traefik sieht die VPN-Client-IP (`10.8.0.7`)
- IP-Allowlist erlaubt Zugriff ?
- Wenn DNS auf ?ffentliche DNS zeigt, wird `grafana.michaelschiemer.de` auf `94.16.110.151` aufgel?st
- Der Browser sendet die Anfrage direkt an die ?ffentliche IP
- Der Traffic geht NICHT ?ber VPN
- Traefik sieht die ?ffentliche Client-IP (`89.246.96.244`)
- IP-Allowlist blockiert Zugriff ? (403)