mirror of
https://github.com/eduardogsilva/wireguard_webadmin.git
synced 2025-04-19 08:55:12 +00:00
190 lines
8.0 KiB
Markdown
190 lines
8.0 KiB
Markdown
## đ Lies das in anderen Sprachen:
|
||
- đŹđ§ [English](../README.md)
|
||
- đ§đ· [PortuguĂȘs](README.pt-br.md)
|
||
- đȘđž [Español](README.es.md)
|
||
- đ«đ· [Français](README.fr.md)
|
||
- đ©đȘ [Deutsch](README.de.md)
|
||
|
||
âš Wenn dir bei der Ăbersetzung Fehler auffallen oder du eine neue Sprache anfordern möchtest, öffne bitte ein [Issue](https://github.com/eduardogsilva/wireguard_webadmin/issues).
|
||
|
||
# wireguard_webadmin
|
||
|
||
**wireguard_webadmin** ist eine funktionsreiche und dennoch einfach zu konfigurierende WeboberflĂ€che zur Verwaltung von WireGuardâVPNâInstanzen. Das Tool wurde entwickelt, um die Administration von WireGuardâNetzwerken zu vereinfachen und bietet eine benutzerfreundliche OberflĂ€che mit UnterstĂŒtzung fĂŒr:
|
||
|
||
- mehrere Benutzer mit unterschiedlichen Berechtigungsstufen,
|
||
- mehrere WireGuardâInstanzen mit individueller PeerâVerwaltung sowie
|
||
- CryptoâKeyâRouting fĂŒr SiteâtoâSiteâVerbindungen.
|
||
|
||
## Funktionen
|
||
|
||
- **Individuelle Transferhistorie pro Peer**: Verfolge Uploadâ und DownloadâVolumen jedes einzelnen Peers.
|
||
- **Erweiterte FirewallâVerwaltung**: MĂŒhelose, umfassende Verwaltung der VPNâFirewall â konzipiert fĂŒr Einfachheit und EffektivitĂ€t.
|
||
- **Portweiterleitung**: Leite TCPâ oder UDPâPorts bequem an Peers oder an Netzwerke hinter diesen Peers weiter.
|
||
- **DNSâServer**: Benutzerdefinierte Hosts und DNSâBlacklists fĂŒr höhere Sicherheit und verbesserten Datenschutz.
|
||
- **MehrbenutzerâUnterstĂŒtzung**: Verwalte den Zugriff mit unterschiedlichen Berechtigungsstufen fĂŒr jeden Benutzer.
|
||
- **Mehrere WireGuardâInstanzen**: Separate Verwaltung der Peers ĂŒber mehrere Instanzen hinweg.
|
||
- **CryptoâKeyâRouting**: Vereinfacht die Konfiguration von SiteâtoâSiteâVerbindungen.
|
||
- **Einfaches Teilen von VPNâEinladungen**: Erzeuge und verteile sofort sichere, zeitlich begrenzte VPNâEinladungen per EâMail oder WhatsApp â inklusive QRâCode und Konfigurationsdatei.
|
||
|
||
Dieses Projekt zielt darauf ab, eine intuitive und benutzerfreundliche Lösung fĂŒr das WireGuardâManagement bereitzustellen, ohne die FlexibilitĂ€t und Leistung von WireGuard einzuschrĂ€nken.
|
||
|
||
## Lizenz
|
||
|
||
Dieses Projekt steht unter der MITâLizenz â siehe [LICENSE](../LICENSE) fĂŒr Details.
|
||
|
||
## Screenshots
|
||
|
||
### PeerâListe
|
||
Zeigt eine vollstĂ€ndige Liste der Peers inklusive Status und weiterer Details zur einfachen Ăberwachung und Verwaltung von WireGuardâVerbindungen.
|
||

|
||
|
||
### PeerâDetails
|
||
Zeigt wichtige PeerâInformationen, detaillierte Metriken sowie eine vollstĂ€ndige TrafficâHistorie. EnthĂ€lt auĂerdem einen QRâCode fĂŒr die einfache Konfiguration.
|
||

|
||
|
||
### VPNâEinladung
|
||
Erstellt sichere, zeitlich begrenzte VPNâEinladungen zum einfachen Teilen per EâMail oder WhatsApp â inklusive QRâCode und Konfigurationsdatei.
|
||

|
||
|
||
### Erweiterte DNSâFilterung
|
||
Blockiere unerwĂŒnschte Inhalte mit integrierten DNSâFilterlisten. Vorgefertigte Kategorien wie Pornografie, GlĂŒcksspiel, FakeâNews, Adware und Malware sind enthalten; eigene Kategorien lassen sich hinzufĂŒgen, um die Sicherheit anzupassen.
|
||

|
||
|
||
### FirewallâVerwaltung
|
||
Bietet eine umfassende OberflĂ€che zur Verwaltung von VPNâFirewallâRegeln. Regeln können mit iptablesâĂ€hnlicher Syntax erstellt, bearbeitet und gelöscht werden und ermöglichen so eine prĂ€zise Steuerung des Datenverkehrs.
|
||

|
||

|
||
|
||
### WireGuardâInstanzâEinstellungen
|
||
Zentrale Anlaufstelle fĂŒr die Verwaltung der Einstellungen einer oder mehrerer WireGuardâInstanzen.
|
||

|
||
|
||
### Konsole
|
||
Schneller Zugriff auf hĂ€ufig genutzte DebuggingâTools zur Diagnose und Lösung potenzieller Probleme in der WireGuardâUmgebung.
|
||

|
||
|
||
### Benutzerverwaltung
|
||
UnterstĂŒtzt MehrbenutzerâUmgebungen durch Zuweisung unterschiedlicher Berechtigungsstufen â von eingeschrĂ€nktem Zugriff bis hin zu vollstĂ€ndigen Administratorrechten.
|
||

|
||
|
||
Auf Basis deiner Anforderungen wurden die folgenden DeployâAnweisungen erstellt. Sie verwenden `wget`, um stets die aktuellste `docker-compose.yml` direkt aus deinem GitHubâRepository abzurufen, und erlĂ€utern die Erstellung einer `.env`âDatei fĂŒr Umgebungsvariablen. So stellst du sicher, dass Nutzer immer mit der neuesten DeploymentâKonfiguration arbeiten.
|
||
|
||
## DeployâAnleitung
|
||
|
||
Folge diesen Schritten, um WireGuard WebAdmin bereitzustellen:
|
||
|
||
1. **Umgebung vorbereiten**
|
||
|
||
Erstelle zunĂ€chst ein Verzeichnis fĂŒr WireGuard WebAdmin und wechsle hinein:
|
||
|
||
```bash
|
||
mkdir wireguard_webadmin && cd wireguard_webadmin
|
||
```
|
||
|
||
2. **DockerâComposeâDatei herunterladen**
|
||
|
||
WĂ€hle je nach Szenario einen der folgenden Befehle, um die passende `docker-compose.yml` herunterzuladen. So nutzt du stets die aktuelle Version der DeploymentâDatei.
|
||
|
||
### Mit NGINX (empfohlen)
|
||
|
||
FĂŒr eine produktionsreife Bereitstellung mit NGINX als ReverseâProxy (empfohlen):
|
||
|
||
```bash
|
||
wget -O docker-compose.yml https://raw.githubusercontent.com/eduardogsilva/wireguard_webadmin/main/docker-compose.yml
|
||
```
|
||
|
||
Im Standard generiert der Container ein selbstsigniertes Zertifikat. Eigene Zertifikate können durch Ersetzen von `nginx.pem` und `nginx.key` im Volume `certificates` hinterlegt werden.
|
||
|
||
### Ohne NGINX (nur Debug/Test)
|
||
|
||
FĂŒr eine reine Testumgebung ohne NGINX (nicht fĂŒr Produktion empfohlen):
|
||
|
||
```bash
|
||
wget -O docker-compose.yml https://raw.githubusercontent.com/eduardogsilva/wireguard_webadmin/main/docker-compose-no-nginx.yml
|
||
```
|
||
|
||
3. **`.env`âDatei erstellen**
|
||
|
||
Erstelle eine `.env`âDatei im selben Verzeichnis wie deine `docker-compose.yml` und passe `my_server_address` an die DNSâAdresse oder IP deines Servers an:
|
||
|
||
```env
|
||
# SERVER_ADDRESS muss auf den Server zeigen. Ohne DNSâNamen kann die IP genutzt werden.
|
||
# Ein falsch konfigurierter SERVER_ADDRESS fĂŒhrt zu CSRFâFehlern.
|
||
SERVER_ADDRESS=my_server_address
|
||
DEBUG_MODE=False
|
||
```
|
||
|
||
4. **Docker Compose ausfĂŒhren**
|
||
|
||
### Mit NGINX (empfohlen)
|
||
|
||
```bash
|
||
docker compose up -d
|
||
```
|
||
|
||
WebâInterface unter `https://yourserver.example.com` öffnen. Bei selbstsigniertem Zertifikat muss die Ausnahme akzeptiert werden.
|
||
|
||
### Ohne NGINX (nur Debug/Test)
|
||
|
||
```bash
|
||
docker compose -f docker-compose-no-nginx.yml up -d
|
||
```
|
||
|
||
WebâInterface unter `http://127.0.0.1:8000` öffnen.
|
||
|
||
Nach diesen Schritten sollte WireGuard WebAdmin laufen. Konfiguriere anschlieĂend deine Instanzen ĂŒber das WebâInterface.
|
||
|
||
## UpgradeâAnleitung
|
||
|
||
RegelmĂ€Ăige Upgrades stellen sicher, dass du die neuesten Funktionen, Sicherheitsverbesserungen und Bugfixes erhĂ€ltst.
|
||
|
||
### Vorbereitung
|
||
|
||
1. **Vom GitâCloneâWorkflow umsteigen**
|
||
|
||
```bash
|
||
cd /pfad/zu/wireguard_webadmin
|
||
```
|
||
Befindet sich deine Installation in einem GitâCloneâVerzeichnis, wechsle dorthin:
|
||
```bash
|
||
cd /pfad/zu/wireguard_webadmin_git_clone
|
||
```
|
||
|
||
2. **Dienste stoppen**
|
||
|
||
```bash
|
||
docker compose down
|
||
```
|
||
|
||
3. **Aktuelle Images ziehen**
|
||
|
||
```bash
|
||
docker compose pull
|
||
```
|
||
|
||
4. **Daten sichern**
|
||
|
||
```bash
|
||
tar cvfz wireguard-webadmin-backup-$(date +%Y-%m-%d-%H%M%S).tar.gz /var/lib/docker/volumes/wireguard_webadmin_wireguard/_data/
|
||
```
|
||
|
||
Passe den Pfad zum Volume ggf. an.
|
||
|
||
5. **Neu deployen**
|
||
|
||
Folge anschlieĂend der [DeployâAnleitung](#deploy-anleitung) und lade dabei die aktuelle `docker-compose.yml` erneut herunter.
|
||
|
||
### Nach dem Upgrade
|
||
|
||
- **Funktion prĂŒfen**: WebâInterface aufrufen und Logs prĂŒfen.
|
||
- **UnterstĂŒtzung**: Bei Problemen siehe [Discussions](https://github.com/eduardogsilva/wireguard_webadmin/discussions).
|
||
|
||
## Beitragen
|
||
|
||
BeitrĂ€ge machen die OpenâSourceâCommunity groĂartig. **Danke fĂŒr jede UnterstĂŒtzung!**
|
||
|
||
## Support
|
||
|
||
Bei Fragen oder Problemen eröffne bitte ein Issue auf GitHub.
|
||
|