No description
  • Python 52.9%
  • Vue 36.3%
  • TypeScript 7%
  • Jinja 2.4%
  • CSS 0.5%
  • Other 0.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Manuel Gläser 3ee2322c7b DMARC + TLS-RPT Report Viewer
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>
2026-05-21 08:53:42 +02:00
backend DMARC + TLS-RPT Report Viewer 2026-05-21 08:53:42 +02:00
deploy DMARC + TLS-RPT Report Viewer 2026-05-21 08:53:42 +02:00
frontend DMARC + TLS-RPT Report Viewer 2026-05-21 08:53:42 +02:00
.gitattributes DMARC + TLS-RPT Report Viewer 2026-05-21 08:53:42 +02:00
.gitignore DMARC + TLS-RPT Report Viewer 2026-05-21 08:53:42 +02:00
LICENSE DMARC + TLS-RPT Report Viewer 2026-05-21 08:53:42 +02:00
README.md DMARC + TLS-RPT Report Viewer 2026-05-21 08:53:42 +02:00

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:

  1. Bootstrap-Wizard — DB-Wahl (SQLite oder externer Postgres mit Live-Verifikation der Verbindung). Container startet sich danach einmal sauber neu.
  2. Setup-Wizard — Admin-Konto, überwachte Domain, IMAP, SMTP, Wochenbericht. Jeder Schritt mit Live-Verbindungstest. OIDC ist optional und wird später unter /settings nachträ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 Volume dmarc_data unter /data/.keys abgelegt.
  • IMAP-, SMTP- und OIDC-Client-Secret werden Fernet-encrypted in der Datenbank gespeichert.
  • Backup von dmarc_data ist 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.