n8n-workflow-listmonk-antispam/README.md
2025-12-22 12:04:25 +00:00

110 lines
No EOL
3.7 KiB
Markdown

# Donau2Space n8n Workflow Listmonk Antispam Anmeldungen
Für den Newsletter von Donau2Space.de kommt die Open-Source-Software Listmonk zum Einsatz.
Die Newsletter werden automatisiert über n8n aus aktuellen Artikeln von Donau2Space.de erzeugt.
Ein Problem dabei waren automatisierte Spam-Anmeldungen.
Zwar ist Double-Opt-In aktiviert, dennoch entstehen viele unbestätigte Anmeldungen („Karteileichen“), die keinen Mehrwert bringen.
Dieses Setup erweitert das Anmeldeformular um ein Honeypot-Feld und leitet alle Anmeldungen zunächst über einen n8n-Workflow, der einen einfachen lokalen Antispam-Check durchführt.
Erst bei Bestehen des Checks wird die Anmeldung an Listmonk weitergegeben, wo anschließend das Double-Opt-In greift.
## Voraussetzungen
- Listmonk
- n8n
- (optional) WordPress für die Formular- und Statusseiten
## Funktionen
- Einfacher lokaler Antispam-Check (Honeypot + Plausibilitätsprüfung)
- Zentrale Verarbeitung aller Newsletter-Anmeldungen über n8n
- Weiterleitung an Listmonk nur bei bestandenem Check
- Anzeige von Statusseiten in WordPress:
- Newsletter Danke
- Newsletter Fehler
## Einstellungen
Alle relevanten Einstellungen und Variablen können direkt im Code angepasst werden.
Es sind keine externen Dienste oder APIs erforderlich.
## Benutzung
Im Ordner **`n8n-workflow`** befindet sich der Newsletter-Antispam-Workflow als JSON-Datei zum direkten Import in **n8n**.
Vor oder nach dem Import müssen die **Domain- und URL-Variablen** an die eigene Umgebung angepasst werden.
Im **Code Node** des Workflows erfolgt ein lokaler Antispam-Check, der jede Anmeldung vor der Weiterleitung an Listmonk prüft.
### Durchgeführte Prüfungen
- Herkunft des Requests (Origin / Referer)
- Optionales Shared Secret
- Honeypot-Felder
- Zeit- und Bot-Speed-Check
- User-Agent-Plausibilität
- E-Mail Pflichtfeld & Formatprüfung
- Domain-Blacklist
- Consent- / Checkbox-Pflicht
- Prüfung auf gefüllte Kommentar- / Textfelder
- Name-Spam-Erkennung
- Bad-Word-Blacklist
- Wortlängen- und Zeichen-Plausibilität
Alle Prüfungen können je nach Bedarf angepasst oder erweitert werden.
## Formulare & Frontend
Im Ordner **`codes`** befinden sich:
- Das Newsletter-Anmeldeformular
(inkl. **Listmonk-Listen-UUID**)
- Die notwendigen **Domain-Variablen** für den n8n-Webhook
- Passendes **JavaScript** und **CSS-Styling**, wie es produktiv auf Donau2Space.de eingesetzt wird
## Statusseiten (WordPress)
Für die Rückmeldungen werden in WordPress zwei Seiten angelegt, z. B.:
- **Newsletter Danke**
- **Newsletter Fehler**
Diese werden mit folgenden Shortcodes ausgestattet:
- `[d2s_newsletter_danke]`
- `[d2s_newsletter_error]`
Weitere Konfiguration ist nicht erforderlich.
## Ablauf
1. Nutzer füllt das Newsletter-Anmeldeformular aus
2. Die Checkbox (Datenschutz / Newsletter abonnieren) muss aktiv sein
3. Die Anmeldung wird an den **n8n-Workflow** gesendet
4. Der lokale Antispam-Check prüft die Daten
5. Bei Erfolg:
- Weiterleitung auf die **Newsletter-Danke-Seite**
- Übergabe der Anmeldung an **Listmonk**
- Versand der **Double-Opt-In-E-Mail**
6. Nach Bestätigung ist der Nutzer regulär im Listmonk-Newsletter angemeldet
## Demo
Produktiv im Einsatz auf:
<br><a href="https://donau2space.de" target="_blank" rel="noopener noreferrer">Donau2Space.de</a><br>
## Support
Bei Fragen, Problemen oder Individualisierungen bitte das Support-Thema im Forum nutzen:
<a href="https://missioncontrol.donau2space.de/t/donau2space-listmonk-n8n-workflow-antispam/200"
target="_blank"
rel="noopener noreferrer">
Donau2Space.de Listmonk n8n Workflow Antispam
</a>
## Lizenz
MIT License
Dieses Plugin ist im Rahmen des Projekts **Donau2Space.de** entstanden, ist aber nicht
exklusiv daran gebunden und kann frei verwendet und angepasst werden.