Auf dieser Seite
3 Min. Lesezeit

Tag 11 - KM0 Mail in Produktion

@km0digital.com-Mail mit Postfix, Dovecot, Rspamd und Roundcube auf mail.km0digital.com; MX/SPF/DKIM/DMARC-DNS, OpenCloud-Relay und Phase-1b-Pläne.

Einleitung

Am Tag 9 wurden Preise, Rechtliches, OpenCloud-Registrierung und Conversion-Polish ausgeliefert. Es gibt keinen Tag-10-Artikel (internes Mail-Deployment ohne Beitrag). Am 14. Juni 2026 haben wir KM0 Mail aktiviert: @km0digital.com-Postfächer, Webmail unter mail.km0digital.com und SMTP-Relay für OpenCloud-Benachrichtigungen.

KM0 ist nicht mehr auf Gmail oder externe APIs für operativen Domain-Mail angewiesen und öffnet den Weg zu Registrierungsverifikation, Ideen-Alerts und Marketing auf derselben Infrastruktur.

Zusammenfassung

Meilensteine des Tages

  • Stack: Repo AMVARA-CONSULTING/km0-mail mit Postfix, Dovecot, Rspamd, Roundcube und PostgreSQL (Docker Compose).
  • Hostname: mail.km0digital.com auf demselben VPS wie OpenCloud (116.202.10.106).
  • Webmail: Nginx + Let's Encrypt zu Roundcube auf Loopback :8080.
  • Betrieb: Postfächer postmaster@ und noreply@; CLI ./scripts/km0-mail-admin.
  • Sicherheit: Rspamd + DKIM-Signatur; fail2ban-Jail km0-mail; UFW 25, 587, 993.
  • OpenCloud: lokales Postfix-Relay (host.docker.internal:587, ohne Auth) mit Absender noreply@km0digital.com.

KM0 Mail

Architektur und Ablauf

Internet (MX @ → mail.km0digital.com)
        ↓
  Postfix (:25 / :587 submission)
        ↓
  Rspamd (Anti-Spam, DKIM signing)
        ↓
  Dovecot (:993 IMAPS) → Maildir
        ↓
  Roundcube (Webmail, Loopback :8080 → Nginx TLS)
  • Eingang: Postfix nimmt Mail für @km0digital.com an und liefert über Dovecot LMTP an Maildir.
  • Ausgang: authentifizierte Clients (587) und internes Relay von OpenCloud ohne Docker-Netzwerk-Credentials.
  • Webmail: Roundcube spricht mit Dovecot; öffentlicher Zugriff nur per HTTPS auf der Mail-Subdomain.
  • Admin: km0-mail-admin create-mailbox, alias, set-password im km0-mail-Runbook dokumentiert.
  • Referenz-Issue: km0-mail #1 (Redmine #7605).

DNS

Zustellbarkeit

Ohne korrekte Records landet Mail im Spam oder springt zurück. Die vollständige Checkliste steht in docs/joker-dns-checklist.md im km0-mail-Repo.

  • MX: @mail.km0digital.com.
  • SPF: TXT-Record, der den KM0-Ausgangsserver autorisiert.
  • DKIM: Selektor mail._domainkey mit öffentlichem Schlüssel im DNS.
  • DMARC: Richtlinie p=none mit Berichten an postmaster@km0digital.com.
  • PTR: Hetzner zeigt auf mail.km0digital.com (konsistent mit HELO/EHLO).

OpenCloud

Phase-1-Integration (teilweise)

OpenCloud (Benachrichtigungen)
        ↓
  host.docker.internal:587 (Postfix relay, ohne Auth)
        ↓
  Postfix → Rspamd → Internet-Ausgang
  Absender: noreply@km0digital.com
  • km0-opencloud: SMTP_*-Variablen in .env und extra_hosts in Compose, um Host-Postfix zu erreichen.
  • Umfang: Cloud-Benachrichtigungen gehen bereits über KM0 Mail; E-Mail-Verifikation bei Registrierung bleibt ausstehend (Phase 1b).
  • LDAP: keine Vereinheitlichung in Phase 1; Spalte mail_accounts.opencloud_uuid für später reserviert.

Produkt

Entscheidungen heute

  • Preis: Mail de facto in KM0-Angebot enthalten; Preisentscheidung später.
  • Skalierung: Ziel >1000 Postfächer vor Jahresende.
  • Rechtliches: Seiten /legal/ und /security/ decken mail.km0digital.com noch nicht ab (separates Issue).
  • Services: E-Mail-Karte auf der Startseite bleibt bis Phase 1b deaktiviert (separates Issue).

Roadmap

Phase 1b ausstehend

Folgendes ist geplant, aber in diesem Release noch nicht umgesetzt:

  1. register-api: E-Mail-Verifikation über lokales Postfix (Gmail/extern ersetzen).
  2. km0-web scripts/notify-idea-email.sh: lokales Relay (heute AutoMail API).
  3. Marketing / tmp: lokales SMTP für Kampagnen und temporäre Umgebungen.
  4. Rechtliches und Sicherheit auf km0-web: mail.km0digital.com abdecken.
  5. E-Mail-Block in Services: aktive Karte auf der Landing aktivieren.
  6. Backup: Maildir-Cron im Runbook dokumentieren.
  7. Phase 2: ClamAV, LDAP-Vereinheitlichung, automatisiertes Provisioning.

Verifikation

Tag 11 prüfen

  1. Webmail: mail.km0digital.com öffnen und TLS-Zertifikat prüfen.
  2. MX: dig +short MX km0digital.com sollte mail.km0digital.com auflösen.
  3. SPF: dig +short TXT km0digital.com enthält SPF-Record.
  4. DKIM: dig +short TXT mail._domainkey.km0digital.com liefert öffentlichen Schlüssel.
  5. DMARC: dig +short TXT _dmarc.km0digital.com zeigt Richtlinie und Reporting.
  6. PTR: dig +short -x 116.202.10.106 entspricht dem Mail-Server-Hostname.
  7. Checkliste: joker-dns-checklist.md Schritt für Schritt abarbeiten.
  8. OpenCloud: Testbenachrichtigung auslösen und Absender noreply@km0digital.com prüfen.

Serie

Nächster Eintrag

Am Tag 12 steht das Kundengespräch zur UX; am Tag 13 Meet 6: Sichtbarkeit, Vereine (AMPAs, Nachbarn) und kommerzielle nächste Schritte. Testen Sie unterdessen das Webmail oder sehen Sie Preise. Fragen: Kontakt.