# grommunio-antispam mit Rspamd: Spamfilterung, Lernen und Betrieb Schritt für Schritt

Source: https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt
Language: de
Published: 2026-09-02
Updated: 2026-10-22

Rspamd in grommunio produktiv einrichten: WebUI, GTUBE, Bayes-Training, Whitelist/Blacklist-Maps, DKIM-Kontext und Betrieb prüfen.

## Kurzüberblick

Getestete Basis ist die openSUSE-basierte grommunio Appliance 2026.06.1. Die Beispiele verwenden durchgehend die neutrale Appliance-Domain https://mail.example.test; Pfade wie /web/, /admin/, /auth/, /chat/, /meet/ und /files/ liegen auf derselben Appliance.Dieser Beitrag zeigt, wie du grommunio-antispam mit Rspamd auf der bestehenden grommunio Appliance prüfst, konfigurierst und testest.

Du öffnest Rspamd aus dem grommunio Admin Interface, testest GTUBE, History, Symbols, Bayes-Lernen, Allowlist, Denylist, Logs und die technische Abnahme.

## Getestete Umgebung

- grommunio 2026 auf der openSUSE-basierten grommunio Appliance.
- Alle Appliance-Befehle werden direkt auf der grommunio Appliance ausgeführt.
- Öffentliche Beispiele verwenden durchgehend die neutrale Appliance-Domain https://mail.example.test.

## Voraussetzungen

Eine bestehende oder geplante grommunio-Umgebung, passende DNS-Namen, TLS, administrative Zugänge und ein klares Ziel für Mail, Collaboration oder Betrieb.

## Ziel dieser Anleitung

Diese Anleitung baut auf der grommunio-2026.06.1-Installation auf und zeigt Schritt für Schritt, wie du grommunio-antispam mit Rspamd verstehst, prüfst, testest, trainierst und betrieblich einordnest. Der Beitrag ist bewusst praktisch: Du bekommst Befehle, Kontrollpunkte, echte Appliance-Screenshots und Hinweise, welche Werte du produktiv nicht blind übernehmen solltest.

- Du erkennst, welche Rspamd-Prozesse in grommunio laufen.
- Du testest den Mailfilter mit einer sicheren GTUBE-Testnachricht.
- Du liest Score, Action, Symbole und History richtig.
- Du trainierst Spam und Ham kontrolliert.
- Du verstehst, welche Funktionen für produktiven Betrieb wichtig sind: SPF, DKIM, DMARC, RBL/SURBL, Fuzzy, Greylisting, Rate Limits, Neural/Bayes, Multimap und Monitoring.

[Die Basisinstallation findest du hier: grommunio 2026.06.1 installieren.](https://forgeone.solutions/de/tech/grommunio-2026-installieren)

## Geprüfte Appliance-Grundlage

Die Anleitung wurde gegen eine isolierte grommunio-Appliance geprüft. Hostname, Domain und Nachrichten sind synthetisch, die Schritte entsprechen aber dem produktiven Administrationsweg. Die Rspamd-Weboberfläche wurde nicht über einen freien Controller-Port veröffentlicht, sondern über den grommunio-Admin-Pfad \`https://mail.example.test:8443/antispam/\` geprüft.

```bash
hostname -f
cat /etc/os-release | grep -E '^(PRETTY_NAME|VARIANT|ID_LIKE)='
rpm -qa | grep -Ei 'grommunio-antispam|rspamd|postfix|redis' | sort
rspamd --version
```

Geprüft wurde grommunio 2026.06.1 mit grommunio-antispam 4.1.5, Postfix 3.10.2 und Redis 8.2.3. Wichtig: Diese Appliance nutzte XFS auf dem Root-Dateisystem und systemd-networkd für die Netzwerkkonfiguration. Das ist der geprüfte Appliance-Zustand, keine allgemeine Aussage über jede SUSE- oder SLES-Installation.

## Architektur: Postfix, Rspamd und Redis

grommunio-antispam basiert auf Rspamd. Rspamd ist ein modularer Mailfilter: eine Nachricht wird von mehreren unabhängigen Prüfungen bewertet. Jede Prüfung liefert ein Symbol und optional Punkte. Aus der Summe entsteht die Action, zum Beispiel no action, add header, greylist oder reject.

- Postfix nimmt Mail an und übergibt sie per Milter an Rspamd.
- Der Proxy-Worker lauscht lokal auf Port 11332.
- Normal-Worker prüfen Nachrichten auf Port 11333.
- Der Controller mit WebUI und API lauscht lokal auf Port 11334.
- Redis speichert Zustände wie Bayes, History, Greylisting, Rate-Limits und weitere lernende Daten.

```bash
ss -ltnp | grep -E ':(25|587|11332|11333|11334)\b'
postconf -n | grep -Ei 'milter|content_filter'
systemctl list-units --type=service --all | grep -Ei 'redis|valkey'
```

In der geprüften Appliance war \`smtpd\_milters = inet:localhost:11332\` gesetzt. Der Controller war nur lokal beziehungsweise über den grommunio-Admin-Pfad erreichbar. Genau so sollte es auch produktiv gedacht werden: Maildienste werden passend veröffentlicht, der Antispam-Controller bleibt im Management-Netz, hinter VPN oder hinter klaren IP-Regeln.

## Schritt 1: Dienste und Konfiguration prüfen

Beginne immer mit einer Zustandsprüfung. Wenn Dienste nicht laufen oder die Konfiguration nicht parsebar ist, ist jede fachliche Filteranalyse wertlos.

```bash
systemctl is-active grommunio-antispam postfix redis@grommunio
rspamadm configtest
rspamc stat
journalctl -u grommunio-antispam --since "30 minutes ago" --no-pager
```

Erwartet ist \`syntax OK\`, ein aktiver Antispam-Dienst und ein plausibler \`rspamc stat\`-Output. Warnungen musst du bewerten: DNS-Fehler, fehlende Maps oder kaputte lokale Includes sind oft Betriebsfehler, während ein frisch aufgebautes System ohne Mailvolumen naturgemäß noch wenig Statistik zeigt.

## Schritt 2: Weboberfläche aus dem Admin Interface öffnen

In der geprüften Appliance öffnest du Rspamd direkt aus dem grommunio Admin Interface. Die erreichbare URL lautet \`https://mail.example.test:8443/antispam/\`; ein separater öffentlicher Controller-Port ist dafür nicht nötig.

```bash
https://mail.example.test:8443/antispam/
```

[![Rspamd Dashboard in grommunio-antispam 4.1.5 mit Scan-Zahlen, Actions, Bayes-Statistik und Version.](https://forgeone.solutions/media/grommunio-antispam-2026-01-dashboard.png)](https://forgeone.solutions/media/grommunio-antispam-2026-01-dashboard.png)

Screenshot: Dashboard der geprüften grommunio-2026.06.1-Appliance mit grommunio-antispam 4.1.5.

## Schritt 3: Actions, Scores und Symbole verstehen

Rspamd trifft keine magische Ja/Nein-Entscheidung. Es sammelt Symbole, addiert Scores und empfiehlt eine Action. In der geprüften Konfiguration lagen die Schwellwerte bei greylist 4, add header 6 und reject 15. Produktiv änderst du solche Werte erst nach Beobachtung realer Mailströme.

[![Konfigurationsansicht von grommunio-antispam mit Actions und dynamischen Maps.](https://forgeone.solutions/media/grommunio-antispam-2026-03-configuration-actions.png)](https://forgeone.solutions/media/grommunio-antispam-2026-03-configuration-actions.png)

Screenshot: Actions und Maps in der Rspamd-Konfiguration; lokale Overrides gehören kontrolliert dokumentiert.

```bash
rspamadm configdump actions
rspamadm configdump spf
rspamadm configdump dkim
rspamadm configdump dmarc
```

Bearbeite ausgelieferte Defaults nicht direkt. Lege lokale Dateien in \`local.d\` an und prüfe danach immer \`rspamadm configtest\`. Bei grommunio heißt der Konfigurationspfad in der Appliance \`/etc/grommunio-antispam\`; Beispiele aus generischer Rspamd-Dokumentation verwenden häufig \`/etc/rspamd\`.

## Schritt 4: Erste Nachricht scannen

Erstelle zuerst eine harmlose synthetische Nachricht und prüfe sie über \`rspamc symbols\`. Achte nicht nur auf die Action, sondern auf die Begründung: Symbole wie fehlende Received-Header, Test-Domains oder DNS-Probleme können bei synthetischen Nachrichten höhere Scores verursachen als in einer echten Mailkette.

```bash
cat > /tmp/ham.eml <<'EOF'
From: Alex Example <alex@example.test>
To: Admin Example <admin@example.test>
Subject: Testtermin für Mailfilter
Date: Mon, 7 Sep 2026 10:00:00 +0200
Message-ID: <ham-001@example.test>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8

Hallo,

das ist eine harmlose interne Testnachricht für die Antispam-Validierung.
EOF

rspamc symbols < /tmp/ham.eml
```

In der geprüften Umgebung wurde diese Nachricht wegen synthetischer Merkmale als \`add header\` bewertet. Das ist ein gutes Beispiel dafür, warum du Testergebnisse erklären musst: Die Technik funktioniert, aber die Datenbasis entspricht nicht vollständig einer echten Produktionsmail.

## Schritt 5: Spam mit GTUBE sicher testen

Für reproduzierbare Tests verwendest du GTUBE. Das ist eine harmlose Testsignatur, die Spamfilter wie eine Spam-Erkennung behandeln sollen. So musst du keine echte Spam-Mail speichern oder weiterleiten.

```bash
cat > /tmp/gtube.eml <<'EOF'
From: Sender Example <sender@example.net>
To: Alex Example <alex@example.test>
Subject: GTUBE Funktionstest
Date: Mon, 7 Sep 2026 10:05:00 +0200
Message-ID: <spam-gtube-001@example.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8

This is a safe spam-filter test message.
XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X
EOF

rspamc symbols < /tmp/gtube.eml
```

Der GTUBE-Test lieferte \`Action: reject\`, \`Score: 15.00 / 15.00\` und das Symbol \`GTUBE\`. Damit ist der Filterpfad vom Client über Rspamd bis zur Action nachvollziehbar.

[![Scan/Learn-Ansicht mit sicherer GTUBE-Testnachricht und Reject-Ergebnis.](https://forgeone.solutions/media/grommunio-antispam-2026-05-scan-learn-gtube.png)](https://forgeone.solutions/media/grommunio-antispam-2026-05-scan-learn-gtube.png)

Screenshot: Scan/Learn mit GTUBE: die Oberfläche zeigt Reject, Score und auslösendes Symbol.

## Schritt 6: Bayes-Lernen kontrolliert einsetzen

Bayes-Lernen ist wertvoll, aber nur mit sauberen Trainingsdaten. Trainiere eindeutige Spam-Beispiele als Spam und eindeutige False Positives als Ham. Wenn Benutzer ungeprüft alles melden, verschlechterst du die Qualität des Filters.

```bash
rspamc learn_spam /tmp/gtube.eml
rspamc learn_ham /tmp/ham.eml
rspamc stat
```

Nach dem Lernen wurde im Dashboard ein Ham-Learn sichtbar. Für produktive Systeme gehören ein Meldeprozess, Stichprobenprüfung, Backup der Zustandsdaten und regelmäßige Kontrolle der False-Positive-Rate dazu.

## Schritt 7: History und konkrete Ursachen lesen

Die History ist der schnellste Weg von einer Benutzerbeschwerde zur Ursache. Öffne die konkrete Nachricht und prüfe Absender, Empfänger, Betreff, Action, Score, Scan-Zeit und Symbole. Erst danach entscheidest du, ob DNS, Reputation, Content, Attachment, URL, Bayes oder eine lokale Regel verantwortlich war.

[![History-Ansicht mit Score, Action, Symbolen und Scan-Zeit.](https://forgeone.solutions/media/grommunio-antispam-2026-07-history.png)](https://forgeone.solutions/media/grommunio-antispam-2026-07-history.png)

Screenshot: History nach dem Funktionstest mit Action, Score, Symbolen und Scan-Zeit.

```bash
journalctl -u postfix --since "2 hours ago" --no-pager
journalctl -u grommunio-antispam --since "2 hours ago" --no-pager
mailq
```

## Schritt 8: Symbols als Tuning-Grundlage nutzen

Die Symbols-Ansicht zeigt, welche Prüfungen existieren und wie sie bewertet werden. Das ist der bessere Startpunkt als blind Schwellenwerte zu erhöhen. Wenn ein Symbol regelmäßig falsche Ergebnisse liefert, prüfst du zuerst DNS, lokale Maps, Authentifizierung und reale Beispiele.

[![Symbols-Ansicht in grommunio-antispam zur Bewertung einzelner Rspamd-Prüfungen.](https://forgeone.solutions/media/grommunio-antispam-2026-04-symbols.png)](https://forgeone.solutions/media/grommunio-antispam-2026-04-symbols.png)

Screenshot: Symbols zeigen, welche Einzelprüfungen Rspamd in die Gesamtbewertung einrechnet.

## Mail falsch bewertet: erst analysieren, dann Ausnahmen setzen

Allowlisting ist nicht der erste Schritt. Wenn du eine legitime Mail sofort erlaubst, ohne die Ursache zu verstehen, versteckst du DNS-, Authentifizierungs-, Reputations- oder Trainingsprobleme. Arbeite deshalb immer in dieser Reihenfolge:

```bash
Mail falsch bewertet?
  -> SPF, DKIM und DMARC korrekt?
  -> Reputation von IP, Domain und URLs plausibel?
  -> Bayes oder Neural beteiligt?
  -> lokale Regel, Map oder Override beteiligt?
  -> erst dann kontrollierte Allowlist, Denylist oder Ausnahme setzen
```

## Schritt 9: Allowlist, Denylist und Multimap sauber planen

Ausnahmen sind nützlich, aber gefährlich, wenn sie zu breit sind. Trenne deshalb Regeldefinition und dynamische Map-Dateien: die Multimap-Regel liegt in \`/etc/grommunio-antispam/local.d\`, die durch Admin-Prozesse gepflegten Listen liegen unter \`/var/lib/grommunio-antispam\`. So bleiben Paketdefaults unangetastet und die Listen können kontrolliert gesichert, versioniert oder über ein internes Tool gepflegt werden.

```bash
install -d -m 0750 -o groas -g grommunio /var/lib/grommunio-antispam/maps

cat > /etc/grommunio-antispam/local.d/multimap.conf <<'EOF'
WHITELIST_SENDER_DOMAIN {
  type = "from";
  filter = "email:domain";
  map = "/var/lib/grommunio-antispam/maps/whitelist_sender_domain.map";
  score = -5.0;
  description = "Whitelisted sender domains reviewed by mail operations";
}

WHITELIST_SENDER_ADDRESS {
  type = "from";
  filter = "email";
  map = "/var/lib/grommunio-antispam/maps/whitelist_sender_address.map";
  score = -5.0;
  description = "Whitelisted sender addresses reviewed by mail operations";
}

BLACKLIST_SENDER_DOMAIN {
  type = "from";
  filter = "email:domain";
  map = "/var/lib/grommunio-antispam/maps/blacklist_sender_domain.map";
  score = 8.0;
  description = "Blacklisted sender domains reviewed by mail operations";
}

BLACKLIST_SENDER_ADDRESS {
  type = "from";
  filter = "email";
  map = "/var/lib/grommunio-antispam/maps/blacklist_sender_address.map";
  score = 8.0;
  description = "Blacklisted sender addresses reviewed by mail operations";
}
EOF

printf '%s\n' 'partner.example' > /var/lib/grommunio-antispam/maps/whitelist_sender_domain.map
: > /var/lib/grommunio-antispam/maps/whitelist_sender_address.map
: > /var/lib/grommunio-antispam/maps/blacklist_sender_domain.map
: > /var/lib/grommunio-antispam/maps/blacklist_sender_address.map
chown groas:grommunio /var/lib/grommunio-antispam/maps/*.map
chmod 0640 /var/lib/grommunio-antispam/maps/*.map

rspamadm configtest
systemctl reload grommunio-antispam
rspamc symbols < /tmp/ham.eml | grep -E 'WHITELIST|BLACKLIST|Action|Score' || true
```

Nutze konkrete Absender, Partnerdomains oder technische Relay-IP-Adressen. Setze keine globale Allowlist für große Freemail- oder Cloud-Domains. Nach jeder Änderung prüfst du \`rspamadm configtest\`, lädst den Dienst neu, sendest oder scannst eine konkrete Testmail und kontrollierst History, Score und Symbole.

Für produktive Änderungen brauchst du einen Review-Prozess: Wer darf Ausnahmen anlegen, wie lange gelten sie, welche Beispiele belegen die Ausnahme und wann wird sie erneut geprüft?

## Schritt 10: Test-Selectors verstehen

Selectors extrahieren Felder aus Nachrichten. Damit prüfst du, ob eine Regel wirklich den Wert sieht, den du erwartest: SMTP-Absender, Empfänger, Header, Subject, IP, MIME-Struktur oder URL-Bestandteile.

[![Test-Selectors in grommunio-antispam mit einer synthetischen Nachricht.](https://forgeone.solutions/media/grommunio-antispam-2026-06-test-selectors.png)](https://forgeone.solutions/media/grommunio-antispam-2026-06-test-selectors.png)

Screenshot: Test-Selectors mit synthetischer Nachricht; nützlich vor eigenen Regeln und Maps.

## Wichtige Feature-Bereiche in grommunio-antispam

Ordne die Funktionen nach Problemklasse. Reputation beantwortet die Frage, ob Absender, IP, Domain oder URL vertrauenswürdig wirken. Content- und Phishing-Prüfungen betrachten Inhalt, Links, Anhänge und Muster. Delivery Controls steuern Zustellverhalten und Geschwindigkeit. Learning passt Bewertungen über saubere Trainingsdaten an. Diese Gruppen helfen dir, nicht jedes Problem mit derselben Ausnahme zu lösen.

- SPF, DKIM, DMARC und ARC prüfen die Identität und Authentizität von Mailflüssen.
- RBL und SURBL bewerten IPs, Domains und URLs über Reputationsdaten.
- Fuzzy Checks erkennen bekannte oder ähnliche Spam-Inhalte.
- Bayes und Neural verbessern Bewertungen über Trainings- und Lernmodelle.
- Greylisting und Rate Limits bremsen verdächtige Zustellmuster.
- Multimap, Force Actions und lokale Maps bilden kontrollierte Ausnahmen und Regeln ab.
- Milter Headers sorgen dafür, dass Ergebnisse sichtbar in Mailheader geschrieben werden können.
- External Services und Antivirus-Integration sind Erweiterungspunkte, müssen aber bewusst geplant und überwacht werden.

[![Durchsatzansicht in grommunio-antispam nach einem kontrollierten Funktionstest.](https://forgeone.solutions/media/grommunio-antispam-2026-02-throughput.png)](https://forgeone.solutions/media/grommunio-antispam-2026-02-throughput.png)

Screenshot: Durchsatz und Actions helfen beim Betrieb, besonders nach Policy- oder DNS-Änderungen.

## SPF, DKIM, DMARC und ARC richtig einordnen

Diese Prüfungen sind keine kosmetischen Zusatzfelder, sondern die Vertrauenskette deiner Mail-Domains. SPF prüft, ob der sendende Server zur Domain passt. DKIM prüft die Signatur der Nachricht. DMARC verbindet SPF und DKIM mit einer Domain-Policy. ARC hilft, wenn Nachrichten über Weiterleitungen oder Mailinglisten laufen.

```bash
dig TXT example.com +short
dig TXT _dmarc.example.com +short
dig TXT default._domainkey.example.com +short

# DMARC für neue Domains zuerst beobachten:
# v=DMARC1; p=none; rua=mailto:dmarc@example.com

# Erst nach Auswertung verschärfen:
# v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com
# v=DMARC1; p=reject; rua=mailto:dmarc@example.com
```

Starte DMARC für produktive Domains meist mit Beobachtung. Wenn legitime Sender, Weiterleitungen, Newsletter-Systeme und Partner-Mailserver sauber erfasst sind, kannst du kontrolliert auf \`quarantine\` oder \`reject\` gehen.

## RBL, SURBL und URL-Prüfungen bewerten

RBLs prüfen sendende IPs oder Netzwerke, SURBL- und URL-Prüfungen bewerten Domains und Links innerhalb der Nachricht. Diese Treffer sind oft stark, aber nie isoliert zu betrachten. Prüfe bei False Positives, ob ein legitimer Dienst kompromittiert, falsch konfiguriert oder nur temporär gelistet ist.

```bash
rspamadm configdump rbl
rspamadm configdump surbl
rspamc symbols < /tmp/gtube.eml | grep -E 'RBL|SURBL|URL|PHISH|Action|Score' || true
```

## Fuzzy, Phishing und Inhaltsmuster prüfen

Fuzzy Checks erkennen bekannte oder ähnliche Inhalte, ohne dass jede Nachricht exakt gleich sein muss. Phishing- und URL-Module prüfen verdächtige Zieladressen, Umleitungen und Muster. Für produktiven Betrieb ist wichtig, dass DNS funktioniert und externe Lookups nicht durch Firewall, Proxy oder Resolver-Probleme ausgebremst werden.

```bash
rspamadm configdump fuzzy_check
rspamadm configdump phishing
journalctl -u grommunio-antispam --since "1 hour ago" --no-pager | grep -Ei 'fuzzy|phishing|surbl|resolve|timeout' || true
```

## Greylisting und Rate Limits kontrolliert aktivieren

Greylisting verzögert verdächtige Zustellversuche, Rate Limits begrenzen auffällige Sendemuster. Beide Funktionen können wirksam sein, erzeugen aber bewusst Reibung. Deshalb gehören sie nicht blind scharfgestellt, sondern mit Monitoring, Ausnahmen für legitime Systeme und klarer Kommunikation betrieben.

```bash
rspamadm configdump greylist
rspamadm configdump ratelimit
rspamc stat | grep -Ei 'greylist|reject|add header|no action'
```

## Bayes, Neural und Trainingsdaten betreiben

Bayes und Neural sind lernende Verfahren. Sie brauchen saubere Daten, Zeit und Kontrolle. Ein frisches System erkennt bereits viel über Regeln, Reputation und Authentifizierung; das Lernen wird dann wichtig, wenn reale False Positives und False Negatives sauber klassifiziert werden.

```bash
rspamadm configdump classifier-bayes 2>/dev/null || rspamadm configdump statistics
rspamadm configdump neural
rspamc stat
```

Behandle Trainingsdaten wie Betriebsdaten. Wenn Redis, Bayes oder Maps verloren gehen, startet der Filter fachlich nicht bei null, aber wichtige lokale Erfahrungen fehlen.

## Spam kommt durch: False Negatives prüfen

Wenn Spam zugestellt wird, erhöhst du nicht sofort globale Schwellenwerte. Prüfe zuerst, ob die Nachricht den Filterpfad überhaupt durchlaufen hat, welche Symbole gesetzt wurden und ob eine lokale Ausnahme den Score gedrückt hat.

1. Scan- und Milter-Pfad prüfen: Postfix muss Rspamd erreichen.
2. History öffnen und Action, Score, Symbole und Scan-Zeit lesen.
3. Reputation prüfen: RBL, SURBL, URL-Checks und DNS-Auflösung.
4. Bayes/Neural prüfen: wurde die Nachricht falsch als Ham gelernt?
5. Lokale Maps prüfen: Allowlist, Force Action oder Override beteiligt?
6. Kontrolliert als Spam lernen und danach mit einer vergleichbaren Nachricht erneut testen.
7. Eigene Regel erst dann ergänzen, wenn wiederholbare Beispiele und klare Ursache vorliegen.

```bash
postconf -n | grep -Ei 'milter|smtpd_milters'
journalctl -u postfix --since "2 hours ago" --no-pager | grep -Ei 'milter|rspamd|reject|warning' || true
rspamc symbols < /tmp/suspect.eml
rspamc learn_spam /tmp/suspect.eml
rspamadm configtest
```

## Antivirus und externe Services bewusst anbinden

grommunio-antispam bringt die Schnittstellen für Antivirus- und externe Prüfungen mit. Ob du sie aktivierst, hängt von Betriebsmodell, Datenschutz, Latenz, Lizenzierung und vorhandener Security-Architektur ab. Wichtig ist: externe Checks gehören überwacht, damit Timeouts nicht den Mailflow beschädigen.

```bash
rspamadm configdump antivirus
rspamadm configdump external_services
journalctl -u grommunio-antispam --since "1 hour ago" --no-pager | grep -Ei 'antivirus|external|timeout|error' || true
```

## Monitoring und Day-2-Betrieb

Im laufenden Betrieb zählen nicht nur Rejects. Beobachte Scan-Zeit, Queue-Länge, DNS-Auflösung, Redis-Zustand, Mailvolumen, Fehlerlog, Zertifikate, Speicherplatz, Updates und auffällige Änderungen bei den Actions. Genau dafür sind Dashboard, Throughput, History und Logs gemeinsam wertvoll.

```bash
systemctl is-active grommunio-antispam postfix redis@grommunio
mailq
rspamc stat
df -h
journalctl -u grommunio-antispam --since "24 hours ago" --no-pager | tail -200
```

## Backup und Restore realistisch planen

Rspamd speichert keine Mailboxdaten. Für grommunio-antispam sicherst du vor allem lokale Konfiguration, lokale Maps und relevante Zustandsdaten. Nicht jeder Redis-Zähler ist gleich kritisch, aber Bayes/Learn-State, History, Greylisting- und Rate-Limit-Zustände können für Betrieb und Analyse wichtig sein.

- Sichern: \`/etc/grommunio-antispam\`, lokale Includes, lokale Maps unter \`/var/lib/grommunio-antispam\`, dokumentierte Secrets und Betriebsnotizen.
- Prüfen: Redis-Daten, Bayes/Learn-State, History, Greylisting und Rate-Limits nach gewünschtem Wiederanlaufverhalten.
- Nicht verwechseln: Maildaten liegen in grommunio/Gromox, nicht in Rspamd/Redis.
- Nach Restore testen: \`rspamadm configtest\`, Dienststart, Weboberfläche, GTUBE, Ham-Test, History und eine echte Zustellstrecke.

## Reihenfolge in der grommunio-Serie

Wenn du grommunio neu aufbaust, lies zuerst [die Installationsanleitung](https://forgeone.solutions/de/tech/grommunio-2026-installieren). Danach passt dieser Antispam-Beitrag als nächster Day-2-Schritt. Für SSO und zentrale Anmeldung geht es weiter mit [grommunio-auth](https://forgeone.solutions/de/tech/grommunio-auth-keycloak-2026-schritt-fuer-schritt).

[Mehr zum Produkt findest du auf der grommunio-antispam-Seite.](https://forgeone.solutions/de/produkte/grommunio/grommunio-antispam)

## Spam automatisch lernen mit grommunio-spam-run

Die geprüfte grommunio-2026.06.1-Appliance bringt mit grommunio-spam-run.service und grommunio-spam-run.timer eine eigene Implementierung für Spam-Training mit. Verwende dafür keine alten Community-Skripte als Standard. Das mitgelieferte Script liegt unter /usr/sbin/grommunio-spam-run.sh und lernt Nachrichten aus dem Junk-Ordner der Benutzer mit rspamc learn\_spam.

Wichtig: Lernen ist nicht dasselbe wie Löschen. Der Timer ruft das Script ohne Löschparameter auf. Das Löschen trainierter Junk-Mails passiert nur, wenn das Script bewusst mit -d gestartet wird. Aktiviere automatisches Löschen nicht blind, weil falsch einsortierte Nachrichten sonst zuerst trainiert und danach entfernt werden könnten.

```bash
systemctl cat grommunio-spam-run.service
systemctl cat grommunio-spam-run.timer
systemctl status grommunio-spam-run.timer
rspamc stat
```

Im validierten Lab waren Service und Timer vorhanden, aber nicht per Preset aktiviert. Der manuelle Lauf war erfolgreich; ohne vorbereitete Trainingsnachrichten blieb die Zahl gelernter Nachrichten erwartungsgemäß bei 0. Für Produktion aktivierst du den Timer erst, wenn Junk-Folder, False-Positive-Prozess und Monitoring geklärt sind.

```bash
systemctl enable --now grommunio-spam-run.timer
systemctl start grommunio-spam-run.service
journalctl -u grommunio-spam-run.service --since "10 minutes ago"
rspamc stat
```

Automatisches Ham-Learning war in der installierten Appliance nicht als eigener grommunio-Ham-Run-Timer vorhanden. Ham-Training gehört deshalb in einen kontrollierten Review-Prozess mit geprüften Beispielen, nicht in eine frei erfundene Timer-Anleitung.

## Ergebniskontrolle / Technische Abnahme

| Prüfbereich | Prüfung | Erwartetes Ergebnis | Status |
| --- | --- | --- | --- |
| Installation | Pakete und Komponenten prüfen | Der Baustein ist vollständig installiert | PASS |
| Dienste | systemd-Services prüfen | Die notwendigen Dienste sind aktiv | PASS |
| Netzwerk | Ports und URLs prüfen | Der Baustein ist über die vorgesehenen Pfade erreichbar | PASS |
| Grundfunktion | Standalone-Test ausführen | Die Kernfunktion funktioniert vor der tieferen Integration | PASS |
| Authentifizierung | SSO/Login testen | Der Login funktioniert über den vorgesehenen Weg oder ist bewusst nicht erforderlich | PASS oder N/A |
| grommunio Web | Integration aus Web prüfen | Der Baustein ist aus grommunio Web erreichbar oder nutzbar | PASS oder N/A |
| End-to-End | Realen Benutzerworkflow testen | Der vollständige Workflow ist nachvollziehbar erfolgreich | PASS |
| Neustart | Dienste neu starten | Die Funktion bleibt nach einem Neustart erhalten | PASS |
| Logs | Relevante Logs kontrollieren | Keine blockierenden Fehler im geprüften Ablauf | PASS |

## Quellen

Verwendete Hersteller- und Upstream-Dokumentation:

- [grommunio documentation](https://docs.grommunio.com/)
- [grommunio downloads and release information](https://download.grommunio.com/)
- [Rspamd documentation](https://rspamd.com/doc/)

## grommunio-antispam sauber betreiben?

ForgeOne unterstützt dich bei Rspamd, DKIM, SPF, DMARC, Bayes-Training, Ausnahmen, Monitoring und produktiver Mail-Security.

- [Mail-Security besprechen](https://forgeone.solutions/de/kontakt)

## Titelbild

[![Rspamd-Statusansicht als Kartenmotiv für grommunio-antispam.](https://forgeone.solutions/media/grommunio-antispam-2026-card.png)](https://forgeone.solutions/media/grommunio-antispam-2026-card.png)

## Autor

Mathias Rumbold

## Kategorie

- [grommunio & Groupware](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?category=grommunio-groupware)
- [Security & Penetration Testing](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?category=security-penetration-testing)

## Tags

- [grommunio](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=grommunio)
- [grommunio-antispam](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=grommunio-antispam)
- [Rspamd](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=rspamd)
- [Spamfilter](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=spamfilter)
- [Mailserver](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=mailserver)
- [Groupware](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=groupware)
- [E-Mail-Sicherheit](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=email-security)
- [Phishing-Schutz](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=phishing-schutz)
- [DKIM, DMARC und SPF](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=dkim-dmarc-spf)
- [Digitale Souveränität](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=digitale-souveraenitaet)
- [Native Exchange Replacement](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=native-exchange-replacement)
- [Keycloak](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=keycloak)
- [SSO](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=sso)
- [MFA](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=mfa)
- [Enterprise Linux](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=enterprise-linux)
- [Upgrade](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt?tags=upgrade)

## grommunio-Antispam produktiv einordnen

Wir unterstützen bei Rspamd, Regeln, Whitelists, Lernen, Monitoring und sauberer Abnahme im Mailbetrieb.

[Antispam-Konzept besprechen](https://forgeone.solutions/de/produkte/grommunio/grommunio-antispam)

## grommunio 2026 Schritt für Schritt

Die Beiträge bauen chronologisch aufeinander auf: Installation, Security, SSO, Module, Betrieb, Migration, Upgrade und Client-Abnahme. Veröffentlichte Teile werden automatisch verlinkt; geplante Fortsetzungen bleiben sichtbar, aber ohne 404-Link.

1. [grommunio 2026.06.1 installieren: Vom ISO zur lauffähigen Groupware](https://forgeone.solutions/de/tech/grommunio-2026-installieren)
2. [grommunio-antispam mit Rspamd: Spamfilterung, Lernen und Betrieb Schritt für Schritt (aktueller Teil)](https://forgeone.solutions/de/tech/grommunio-antispam-rspamd-2026-schritt-fuer-schritt)
3. [grommunio-auth mit Keycloak: SSO und zentrale Anmeldung Schritt für Schritt](https://forgeone.solutions/de/tech/grommunio-auth-keycloak-2026-schritt-fuer-schritt)
4. [grommunio Meet 2026 ohne Keycloak einrichten und optional mit SSO erweitern](https://forgeone.solutions/de/tech/grommunio-meet-2026-schritt-fuer-schritt)
5. [grommunio Chat 2026 einrichten: Teams, Kanäle, Benutzer und Mandantenfähigkeit testen](https://forgeone.solutions/de/tech/grommunio-chat-2026-schritt-fuer-schritt)
6. [grommunio Files und Office einrichten: Dateien, Web-Einstieg und Online-Office prüfen](https://forgeone.solutions/de/tech/grommunio-files-office-2026-schritt-fuer-schritt)
7. [grommunio Archive 2026 einrichten: E-Mails archivieren, suchen und wiederherstellen](https://forgeone.solutions/de/tech/grommunio-archive-2026-schritt-fuer-schritt)
8. [grommunio MDM 2026 Schritt für Schritt: ActiveSync-Geräte sicher verwalten](https://forgeone.solutions/de/tech/grommunio-mdm-2026-schritt-fuer-schritt)
9. [grommunio Multitenancy 2026: Organizations, Domains und mehrere LDAP-Quellen einordnen](https://forgeone.solutions/de/tech/grommunio-multitenancy-2026-schritt-fuer-schritt)
10. [grommunio 2026 Cluster und Hochverfügbarkeit: vom Multi-Server-Lab zum getesteten Active/Standby-Homeserver](https://forgeone.solutions/de/tech/grommunio-cluster-ha-2026-schritt-fuer-schritt)
11. [grommunio 2026 Disaster Recovery und Single-Mailbox-Restore: Backup, Full DR und gezielte Mailbox-Wiederherstellung im Lab](https://forgeone.solutions/de/tech/grommunio-disaster-recovery-single-mailbox-restore-2026-schritt-fuer-schritt)
12. [IMAP-Postfächer zu grommunio migrieren: Schritt für Schritt mit imapsync](https://forgeone.solutions/de/tech/grommunio-imap-migration-imapsync-2026-schritt-fuer-schritt)
13. [grommunio: Public Folder durch ein Funktionspostfach ersetzen - Schritt für Schritt](https://forgeone.solutions/de/tech/grommunio-public-folder-funktionspostfach-mehrere-domains)
14. [grommunio Web 5.0 im Lab: Settings-Namespace, Shared Mailboxes und Admin-Folgen](https://forgeone.solutions/de/tech/grommunio-web-5-0-im-lab)
15. [grommunio 2026.06.2 Upgrade und technische Abnahme: Keycloak SSO, MFA, AutoDiscover und Mailflow](https://forgeone.solutions/de/tech/grommunio-2026-06-2-upgrade-keycloak-sso-praxis)
16. [grommunio native Clients nach Keycloak SSO: Thunderbird, Outlook, EWS, EAS und MFA richtig einordnen](https://forgeone.solutions/de/tech/grommunio-native-clients-keycloak-sso-2026)
17. grommunio Monitoring und Alerting im Betrieb
18. grommunio Security Hardening in der Praxis
19. grommunio Operations Troubleshooting: typische Fehler sauber eingrenzen

## Weiterführende Inhalte

- [grommunio](https://forgeone.solutions/de/produkte/grommunio)
