macmultimedia macmultimedia
zurück zur Übersicht

🔒 Self-Hosted VPN & DNS Server v4.6

Vollautomatisches Setup für einen privaten, werbefreien und verschlüsselten Internet-Zugang auf Basis von Debian 12/13.

Ein produktionsreifes Installations-Script, das einen vollständigen VPN- und DNS-Server auf einem beliebigen Debian-Server aufbaut – vollautomatisch, server-agnostisch und idempotent (kann nach Fehlern neu gestartet werden).

🧩 Installierte Komponenten

DienstFunktionPort
WireGuardVPN-Protokoll (schnell, modern, sicher)51820/udp
wg-easy v15Web-UI für WireGuard Clients & QR-Codes/wg/
AdGuard HomeDNS-basierter Ad- & Tracking-Blocker:8443
UnboundRekursiver DNS-Resolver (kein Drittanbieter):5353
CaddyReverse Proxy mit automatischem SSL:443
Caddy ManagerWeb-UI für Caddy – Multi-Server Verwaltung:9091
wg6-ManagerIPv6-Peer-Verwaltung & Client-Converter/wg6/
Fail2BanSchutz vor Brute-Force-Angriffen
DashboardZentrales Übersichts-Panel/

🏗️ Architektur

Internet
    │
    ├── :443  Caddy (SSL/TLS automatisch)
    │     ├── /          → Dashboard
    │     ├── /wg/*      → wg-easy v15 (WireGuard UI)
    │     ├── /wg6/*     → IPv6 Manager
    │     └── :8443      → AdGuard Home
    │
    └── :51820/udp  WireGuard VPN
            │
            └── VPN-Netz 10.x.0.0/24
                    ├── DNS  → AdGuard → Unbound → Root-DNS
                    └── Alle Management-Dienste nur via VPN

🔒 Sicherheitskonzept

Das Script beinhaltet ein gestuftes Firewall-System (tunnel.sh):

StufeNameBeschreibung
1DNS-LockdownDNS Port 53 nur für VPN-Clients
2SSH über VPNSSH nur noch über VPN + Key-Only Auth
3Full LockdownAlle Management-Ports nur via VPN
4UnlockFür Wartung & Debugging

🌐 Multi-Server

Das Script ist vollständig server-agnostisch – Domain, IP, VPN-Subnetz werden beim Start abgefragt. Beliebig viele Server können unabhängig installiert werden. Der Caddy Manager ermöglicht die zentrale Verwaltung aller Caddy-Instanzen über eine einzige Web-UI.

📡 IPv6 Dual-Stack

Vollständige IPv6-Unterstützung nach dem Schema:

10.A.B.C  →  fd00:A:B::C
Beispiel: 10.9.0.1  →  fd00:10:9::1

📁 Script-Dateien

vpn-dns-server-setup-v4.6.sh   # Haupt-Setup (vollautomatisch)
wg6-setup.sh                   # IPv6-Manager Installation
tunnel.sh                      # Firewall-Management (Stufe 1–4)

Installation in 3 Schritten:

scp vpn-dns-server-setup-v4.6.sh wg6-setup.sh tunnel.sh root@SERVER_IP:/root/
bash /root/vpn-dns-server-setup-v4.6.sh
# Danach: bash /root/tunnel.sh

✅ Status

ServerDomainStatus
Server 1meinvpn.eu✅ Production, Stufe 4
Server 2macosdns.de✅ v4.6, in Test

Projekt-Version: v4.6 · Stand: März 2026