No description
- Python 52.9%
- Vue 36.3%
- TypeScript 7%
- Jinja 2.4%
- CSS 0.5%
- Other 0.7%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Self-hosted Web-Tool zur Auswertung von DMARC-Aggregat- und TLS-RPT-Reports, ausgelegt auf Microsoft Exchange Server SE. Stack: FastAPI + SQLAlchemy 2.0 (async) + Alembic, Vue 3 + TypeScript + Vite + Tailwind, APScheduler, PostgreSQL. Funktionsumfang u. a.: - IMAP-Sync der Report-Mails, DMARC- + TLS-RPT- + Forensic-Parser - Dashboard mit KPIs, Trend-Charts (24h/7d/30d/90d) und Breakdown-Karten - Multi-Domain-Support mit Domain-Switcher - Sender-Inventur mit Klassifizierung + GeoIP-Verteilung - DNS-Pruefung (SPF/DKIM/DMARC/TLS-RPT/MTA-STS/DNSSEC/DANE) + Policy-Advisor - Vereinte Benachrichtigungen (Wochenbericht + Event-Alarme, Mail/Webhook) - OIDC + lokaler Admin mit TOTP-MFA und Rollen, Audit-Log Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
| backend | ||
| deploy | ||
| frontend | ||
| .gitattributes | ||
| .gitignore | ||
| LICENSE | ||
| README.md | ||
dmarc-reporter
DMARC- und TLS-RPT-Auswertung für Microsoft Exchange Server SE.
Importiert DMARC-Aggregate-Reports (RFC 7489) und SMTP-TLS-Reports (RFC 8460) per IMAP aus einem dedizierten Exchange-Postfach, parst die Anhänge und stellt sie in einem Vue-3-Dashboard dar. Inklusive DNS-Validierung für SPF, DKIM, DMARC, TLS-RPT, MTA-STS und einem wöchentlichen HTML-Report per E-Mail.
Stack
| Komponente | Technologie |
|---|---|
| Backend | FastAPI + SQLAlchemy (async) + Alembic |
| Datenbank | SQLite oder externer PostgreSQL — Auswahl im Browser |
| Frontend | Vue 3 (Composition API) + TypeScript + Vite + TailwindCSS 4 |
| Auth | Lokaler Admin und/oder OIDC via Authentik |
| Scheduler | APScheduler |
| Live-Updates | Server-Sent Events (SSE) |
| Deployment | Docker Compose + nginx |
Quick Start
cp deploy/.env.example deploy/.env
# .env enthält nur Container-Plumbing (Port, Logging, Timezone, CORS).
# Anwendungs-Konfiguration läuft komplett über den Wizard im Browser.
cd deploy
docker compose up -d
Beim ersten Aufruf auf https://localhost:8443 (Browser-Warnung
wegen self-signed Cert einmalig akzeptieren) öffnet sich ein
zweistufiger Wizard:
- Bootstrap-Wizard — DB-Wahl (SQLite oder externer Postgres mit Live-Verifikation der Verbindung). Container startet sich danach einmal sauber neu.
- Setup-Wizard — Admin-Konto, überwachte Domain, IMAP, SMTP,
Wochenbericht. Jeder Schritt mit Live-Verbindungstest. OIDC ist
optional und wird später unter
/settingsnachträglich aktiviert.
Lokalisierung
- Sprache: Deutsch (de-DE)
- Datumsformat:
08.05.2026 13:00:29 Uhr - Zahlen: Komma als Dezimaltrenner
Sicherheits- und Backup-Hinweise
- Crypto-Keys (
SESSION_SECRET,FERNET_KEY) werden beim ersten Start automatisch erzeugt und im Volumedmarc_dataunter/data/.keysabgelegt. - IMAP-, SMTP- und OIDC-Client-Secret werden Fernet-encrypted in der Datenbank gespeichert.
- Backup von
dmarc_dataist Pflicht. Es enthält den Keystore, die DB-Wahl und (bei SQLite) die Datenbank selbst. Ohne Volume sind alle verschlüsselten Felder unwiederbringlich verloren.
Lizenz
MIT — siehe LICENSE.