Files
michaelschiemer/docs/deployment/WIREGUARD-RECREATE-AND-TEST.md

4.6 KiB

WireGuard Client neu erstellen und testen

Problem

Trotz korrekter Config (AllowedIPs = 10.8.0.0/24) kommt Traffic von Windows NICHT ?ber VPN. Die Route ist vorhanden, Ping funktioniert, aber HTTP/HTTPS-Traffic verwendet die ?ffentliche IP.

Strategie

  1. Neue WireGuard-Client-Config generieren (frische Keys, gleiche IP)
  2. Test-Container erstellen um zu pr?fen, ob VPN grunds?tzlich funktioniert
  3. Windows-Client mit neuer Config testen

Schritt 1: WireGuard-Client neu generieren

Alte Config sichern

Die alte Config wird automatisch gesichert als .backup-{timestamp}.

Neue Config generieren

cd deployment/ansible

# Grafana-Test Client neu generieren (gleiche IP: 10.8.0.7)
ansible-playbook -i inventory/production.yml playbooks/regenerate-wireguard-client.yml \
  -e "client_name=grafana-test" \
  -e "client_ip=10.8.0.7"

Was passiert:

  • Alte Config wird gesichert
  • Alte Client-Keys werden aus Server-Config entfernt
  • Neue Client-Keys werden generiert
  • Neuer Client wird zu Server-Config hinzugef?gt
  • WireGuard-Service wird neu gestartet
  • Neue Config-Datei wird lokal gespeichert: deployment/ansible/wireguard-clients/grafana-test.conf

Neue Config auf Windows verwenden

  1. Lade neue Config herunter von:

    deployment/ansible/wireguard-clients/grafana-test.conf
    
  2. Importiere in WireGuard:

    • ?ffne WireGuard
    • Entferne alte "grafana-test" Verbindung
    • Klicke auf "Importieren aus Datei"
    • W?hle die neue grafana-test.conf
  3. Verbinde mit VPN

  4. Teste:

    ping 10.8.0.1
    
  5. Teste Grafana:

    • ?ffne https://grafana.michaelschiemer.de
    • Warte 5 Sekunden

Schritt 2: Test mit Docker-Container

Um zu pr?fen, ob VPN grunds?tzlich funktioniert (unabh?ngig von Windows):

cd deployment/ansible

# Teste WireGuard-Verbindung aus Docker-Container
ansible-playbook -i inventory/production.yml playbooks/test-wireguard-docker-container.yml \
  -e "client_name=grafana-test"

Was passiert:

  • Docker-Container mit WireGuard wird gestartet
  • Client-Config wird in Container geladen
  • Container verbindet sich mit VPN
  • Container testet:
    • Ping zu 10.8.0.1
    • Curl zu https://grafana.michaelschiemer.de
    • DNS-Aufl?sung
  • Traefik-Logs werden gepr?ft, ob Container-IP sichtbar ist

Erwartetes Ergebnis:

  • ? Container kann 10.8.0.1 pingen
  • ? Container kann Grafana erreichen (Status: 200 oder 403, aber Verbindung funktioniert)
  • ? Traefik sieht Container-VPN-IP (10.8.0.x)

Falls Test-Container funktioniert: ? VPN-Server funktioniert korrekt ? Problem liegt an Windows-Client oder Windows-Routing

Falls Test-Container nicht funktioniert: ? VPN-Server-Konfiguration k?nnte Problem haben ? Weiter debuggen

Schritt 3: Container nach Test entfernen

# Auf dem Server
docker stop wireguard-test-client
docker rm wireguard-test-client

N?chste Schritte

Wenn Container-Test erfolgreich ist:

  1. Windows-Client mit neuer Config testen

    • Importiere neue Config
    • Verbinde mit VPN
    • Teste Grafana-Zugriff
  2. Traefik-Logs pr?fen:

    • Wenn ClientHost: 10.8.0.7 ? ? Traffic kommt ?ber VPN!
    • Wenn ClientHost: 89.246.96.244 ? ? Problem liegt an Windows
  3. Wenn Windows immer noch nicht funktioniert:

    • Windows Firewall pr?fen
    • Windows Route-Tabelle erneut pr?fen
    • WireGuard auf Windows neu installieren
    • Eventuell anderen Windows-Client verwenden

Wenn Container-Test fehlschl?gt:

  1. WireGuard-Server-Config pr?fen:

    sudo cat /etc/wireguard/wg0.conf
    
  2. WireGuard-Service-Logs pr?fen:

    sudo journalctl -u wg-quick@wg0 -f
    
  3. Firewall pr?fen:

    sudo ufw status | grep 51820
    

Troubleshooting

Neue Config generiert, aber Windows-Client funktioniert nicht

  1. Pr?fe neue Config:

    # ?ffne neue Config-Datei
    type grafana-test.conf
    # Pr?fe: AllowedIPs = 10.8.0.0/24
    
  2. Pr?fe Windows Route:

    route print | findstr "10.8"
    
  3. Pr?fe WireGuard-Status:

    • ?ffne WireGuard
    • W?hle "grafana-test"
    • Pr?fe Transfer (sollte > 0 sein, wenn VPN verbunden ist)

Container-Test schl?gt fehl

  1. Container-Logs pr?fen:

    docker logs wireguard-test-client
    
  2. Container startet nicht:

    • Pr?fe ob WireGuard-Config korrekt ist
    • Pr?fe ob Container-Rechte korrekt sind (--cap-add=NET_ADMIN)
  3. Container verbindet nicht:

    • Pr?fe Server Firewall
    • Pr?fe WireGuard-Server-Config
    • Pr?fe ob Client in Server-Config enthalten ist