Spamfilter: Unterschied zwischen den Versionen
Peh00 (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
|||
(43 dazwischenliegende Versionen von 10 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Einrichtung, Konfiguration und Optimierung eines Spamfilters. | Einrichtung, Konfiguration und Optimierung eines Spamfilters auf den Hostsharing Servern. Der Artikel beschreibt drei alternative Möglichkeiten: | ||
1. Die Einrichtung von Spamassassin für das persönliche Postfach | |||
2. Die Nutzung der "smailin"-Server für eine komplette Domain | |||
3. Nutzung der Spam-Appliance "SecureMX" | |||
= | = Alternative 1: Persönlichen Spamfilter einrichten = | ||
Hier geht es darum, wie Personen mit (grundlegenden) Kenntnissen in der Shell-Bedienung für ihr persönliches Postfach einen Spam-Filter einrichten können. Spamassassin kann für jedes Postfach individuell konfiguriert werden. Für die Einrichtung und Pflege ist Shell-Zugang zur Mailbox erforderlich. | |||
Ein Bayesfilter kann mit den persönlichen Nachrichten angelernt werden. Dazu sind tiefergehende Shell-Kenntnisse erforderlich (Shell-Skript und Einrichtung eines systemd-Timers). | |||
== Spamassassin Konfigurieren == | |||
Der Spamfilter "Spamassassin" ist bei HS vorinstalliert und kann wie auf der Seite [[Procmail]] beschrieben für eine Mailbox eingebunden werden. | |||
Alternativ kann "spamc", das Kommando zur Nutzung des Spamassassin-Daemon, auch einfach in der Datei ".forward" eines Mail-Users aufgerufen werden: | |||
<syntaxhighlight lang=bash> | |||
"|/usr/bin/spamc -U /var/run/spamd -e /usr/lib/dovecot/deliver" | |||
</syntaxhighlight> | |||
Der Effekt: Spammassassin schreibt seine Testergebnisse in die Headerzeilen jeder E-Mail und leitet die E-Mails weiter an das Programm "deliver" aus dem Dovecot-Paket. Das Sortieren von Spam-EMail in einen Spam-Ordner lässt sich mit Sieve-Filtern umsetzen. | |||
In dieser Variante kann man Spamassassin individuell konfigurieren. Dazu legt man im $HOME des Mailbox-Account ein Verzeichnis "$HOME/.spamassassin" an. Die Konfiguration erfolgt in der Datei "$HOME/.spamassassin/user_prefs". | |||
Konfigurationsbeispiel: | |||
<syntaxhighlight lang=bash> | |||
required_score 4.0 | |||
report_safe 0 | |||
use_bayes 1 | |||
bayes_auto_learn 1 | |||
skip_rbl_checks 0 | |||
use_razor2 1 | |||
use_pyzor 1 | |||
</syntaxhighlight> | |||
== Bayesfilter anlernen == | |||
Wenn der Bayesfilter eingeschaltet ist, macht es Sinn den Filter mit den Befehlen | |||
<syntaxhighlight lang=bash> | |||
sa-learn --spam <platzhalter-spam-nachricht> | |||
sa-learn --ham <platzhalter-erwünschte-nachricht> | |||
</syntaxhighlight> | |||
anzulernen. Ein Bash-Skript für das Erlernen von Spam/Nonspam kann wie folgt aussehen: | |||
# | <syntaxhighlight lang=bash> | ||
#!/bin/bash | |||
# | |||
} | # Learn Spam from Maildir folder Junk/LearnSpam | ||
# | |||
mkdir -p ${HOME}/sa-learn-tmp | |||
cd ${HOME}/Maildir/.Junk.LearnSpam/cur/ | |||
for JUNK in $( ls ); do zcat ${JUNK} > ${HOME}/sa-learn-tmp/$( echo ${JUNK} | cut -d'.' -f2 ).eml ; done | |||
cd ${HOME}/ | |||
sa-learn --spam ${HOME}/sa-learn-tmp/*.eml | |||
rm -f ${HOME}/sa-learn-tmp/*.eml | |||
rm -f ${HOME}/Maildir/.Junk.LearnSpam/cur/* | |||
# | |||
# Learn Non-Spam from Maildir folder Junk/LearnHam | |||
# | |||
cd ${HOME}/Maildir/.Junk.LearnHam/cur/ | |||
for HAM in $( ls ); do zcat ${HAM} > ${HOME}/sa-learn-tmp/$( echo ${HAM} | cut -d'.' -f2 ).eml ; done | |||
cd ${HOME}/ | |||
sa-learn --ham ${HOME}/sa-learn-tmp/*.eml | |||
rm -f ${HOME}/sa-learn-tmp/*.eml | |||
rm -f ${HOME}/Maildir/.Junk.LearnHam/cur/* | |||
</syntaxhighlight> | |||
Die Empfängerin der Nachrichten / der Empfänger füttert den Lernprozess, indem Spam-Nachrichten in den Ordner "Spam/LearnSpam" verschoben werden und indem gute Nachrichten in den Ordner "Spam/LearnHam" kopiert werden. | |||
Das Skript wird über einen systemd-Timer täglich ausgeführt, der pro Mailbox eingerichtet werden muss. | |||
= Alternative 2: Maileingangsserver mit Spamfilter nutzen = | |||
Diese Alternative kann von einem Domain-Administrator oder vom "Webmaster on Demand" für eine oder mehrere E-Mail-Domains eingerichtet werden. Die einzelnen Nutzer:innen können mit Hilfe des Hostsharing-Webmail einen Filter einrichten, so dass verdächtige Nachrichten in einem Spam-Ordner einsortiert werden. | |||
Seit einigen Jahren betreibt Hostsharing zusätzlich zu den vorkonfigurierte Maileingangsservern einen zweiten Satz von Maileingangsservern, bei denen Spamassassin bereits beim Annehmen einer E-Mail ausgeführt wird. Eingehende Nachrichten mit eindeutiger Bewertung als Spam werden bereits im SMTP-Dialog abgewiesen. Nachrichten mit einem Spam-Score über 5 Punkten werden angenommen und zugestellt. Spamassassin fügt die Bewertung für diese Nachrichten in die Header der Nachricht ein, zum Beispiel: | |||
<syntaxhighlight lang=bash> | |||
X-Spam-Flag: YES | |||
X-Spam-Score: 6.263 | |||
X-Spam-Level: ****** | |||
</syntaxhighlight> | |||
Anhand dieser Zeilen kann man in Roundcube Filter einrichten, die die Nachrichten beim Eingehen der Nachricht in einen Spam-Ordner mit verdächtigen Nachrichten verschieben (siehe später folgenden Abschnitt). | |||
== Eingangsserver konfigurieren == | |||
Die Maileingangsserver mit Spamassassin lassen sich pro Domain konfigurieren, indem die MX-Records im DNS-Zonefile gegenüber dem Default-Zonefile angepasst werden. | |||
Im Zonefile entfällt der Platzhalter "{MX_RR}". Stattdessen werden die folgenden MX-Records eingefügt: | |||
<syntaxhighlight lang=bash> | |||
{DOM_HOSTNAME}. IN MX 10 smailin1.hostsharing.net. | |||
{DOM_HOSTNAME}. IN MX 10 smailin2.hostsharing.net. | |||
{DOM_HOSTNAME}. IN MX 10 smailin3.hostsharing.net. | |||
</syntaxhighlight> | |||
Zur Änderung der DNS-Zone siehe: https://www.hostsharing.net/doc/managed-operations-platform/zonefile/ | |||
Wer sich die Aktion auf der Shell nicht zutraut, möge bitte den "Webmaster on Demand" beauftragen. | |||
== Spam-Ordner == | |||
Mit dem folgenden Filter können Nachrichten, die von Spamassassin markiert wurden, automatisch in einen Spam-Ordner verschoben werden. | |||
[[Datei:2025-02-07 Sievefilter-Spam.png|960x480px|gerahmt|links|alternativtext=Screenshot Filterregel zum Spam Aussortieren|Filter in Roundcube einrichten]] | |||
= Alternative 3: SecureMX zubuchen = | |||
Über unseren Domain-Anbieter "Partnergate" bietet Hostsharing als dritte Alternative die kommerzielle Spam-Appliance von Cisco an. Das Produkt heißt bei Partnergate "SecureMX": https://www.hostsharing.net/loesungen/email/spam-abwehr/ | |||
Die Nutzung von SecureMX ist kostenpflichtig und wird auf Wunsch vom Hostsharing-Service eingerichtet. | |||
Es ist zu beachten, dass bei der Nutzung von SecureMX alle eingehenden E-Mail Nachrichten über Server geleitet werden, die nicht unter der Kontrolle von Hostsharing stehen und proprietäre Software einsetzen. Dieser Sachverhalt muss vom Mitglied ggf. datenschutzrechtlich bewertet werden. | |||
---- | ---- | ||
[[Kategorie:HSDoku]] | [[Kategorie:HSDoku]] | ||
[[Kategorie:Installationsanleitungen]] | |||
[[Kategorie:Software]] | |||
[[Kategorie:Glossar]] | [[Kategorie:Glossar]] |
Aktuelle Version vom 7. Februar 2025, 16:48 Uhr
Einrichtung, Konfiguration und Optimierung eines Spamfilters auf den Hostsharing Servern. Der Artikel beschreibt drei alternative Möglichkeiten:
1. Die Einrichtung von Spamassassin für das persönliche Postfach
2. Die Nutzung der "smailin"-Server für eine komplette Domain
3. Nutzung der Spam-Appliance "SecureMX"
Alternative 1: Persönlichen Spamfilter einrichten
Hier geht es darum, wie Personen mit (grundlegenden) Kenntnissen in der Shell-Bedienung für ihr persönliches Postfach einen Spam-Filter einrichten können. Spamassassin kann für jedes Postfach individuell konfiguriert werden. Für die Einrichtung und Pflege ist Shell-Zugang zur Mailbox erforderlich.
Ein Bayesfilter kann mit den persönlichen Nachrichten angelernt werden. Dazu sind tiefergehende Shell-Kenntnisse erforderlich (Shell-Skript und Einrichtung eines systemd-Timers).
Spamassassin Konfigurieren
Der Spamfilter "Spamassassin" ist bei HS vorinstalliert und kann wie auf der Seite Procmail beschrieben für eine Mailbox eingebunden werden. Alternativ kann "spamc", das Kommando zur Nutzung des Spamassassin-Daemon, auch einfach in der Datei ".forward" eines Mail-Users aufgerufen werden:
"|/usr/bin/spamc -U /var/run/spamd -e /usr/lib/dovecot/deliver"
Der Effekt: Spammassassin schreibt seine Testergebnisse in die Headerzeilen jeder E-Mail und leitet die E-Mails weiter an das Programm "deliver" aus dem Dovecot-Paket. Das Sortieren von Spam-EMail in einen Spam-Ordner lässt sich mit Sieve-Filtern umsetzen.
In dieser Variante kann man Spamassassin individuell konfigurieren. Dazu legt man im $HOME des Mailbox-Account ein Verzeichnis "$HOME/.spamassassin" an. Die Konfiguration erfolgt in der Datei "$HOME/.spamassassin/user_prefs".
Konfigurationsbeispiel:
required_score 4.0
report_safe 0
use_bayes 1
bayes_auto_learn 1
skip_rbl_checks 0
use_razor2 1
use_pyzor 1
Bayesfilter anlernen
Wenn der Bayesfilter eingeschaltet ist, macht es Sinn den Filter mit den Befehlen
sa-learn --spam <platzhalter-spam-nachricht>
sa-learn --ham <platzhalter-erwünschte-nachricht>
anzulernen. Ein Bash-Skript für das Erlernen von Spam/Nonspam kann wie folgt aussehen:
#!/bin/bash
#
# Learn Spam from Maildir folder Junk/LearnSpam
#
mkdir -p ${HOME}/sa-learn-tmp
cd ${HOME}/Maildir/.Junk.LearnSpam/cur/
for JUNK in $( ls ); do zcat ${JUNK} > ${HOME}/sa-learn-tmp/$( echo ${JUNK} | cut -d'.' -f2 ).eml ; done
cd ${HOME}/
sa-learn --spam ${HOME}/sa-learn-tmp/*.eml
rm -f ${HOME}/sa-learn-tmp/*.eml
rm -f ${HOME}/Maildir/.Junk.LearnSpam/cur/*
#
# Learn Non-Spam from Maildir folder Junk/LearnHam
#
cd ${HOME}/Maildir/.Junk.LearnHam/cur/
for HAM in $( ls ); do zcat ${HAM} > ${HOME}/sa-learn-tmp/$( echo ${HAM} | cut -d'.' -f2 ).eml ; done
cd ${HOME}/
sa-learn --ham ${HOME}/sa-learn-tmp/*.eml
rm -f ${HOME}/sa-learn-tmp/*.eml
rm -f ${HOME}/Maildir/.Junk.LearnHam/cur/*
Die Empfängerin der Nachrichten / der Empfänger füttert den Lernprozess, indem Spam-Nachrichten in den Ordner "Spam/LearnSpam" verschoben werden und indem gute Nachrichten in den Ordner "Spam/LearnHam" kopiert werden.
Das Skript wird über einen systemd-Timer täglich ausgeführt, der pro Mailbox eingerichtet werden muss.
Alternative 2: Maileingangsserver mit Spamfilter nutzen
Diese Alternative kann von einem Domain-Administrator oder vom "Webmaster on Demand" für eine oder mehrere E-Mail-Domains eingerichtet werden. Die einzelnen Nutzer:innen können mit Hilfe des Hostsharing-Webmail einen Filter einrichten, so dass verdächtige Nachrichten in einem Spam-Ordner einsortiert werden.
Seit einigen Jahren betreibt Hostsharing zusätzlich zu den vorkonfigurierte Maileingangsservern einen zweiten Satz von Maileingangsservern, bei denen Spamassassin bereits beim Annehmen einer E-Mail ausgeführt wird. Eingehende Nachrichten mit eindeutiger Bewertung als Spam werden bereits im SMTP-Dialog abgewiesen. Nachrichten mit einem Spam-Score über 5 Punkten werden angenommen und zugestellt. Spamassassin fügt die Bewertung für diese Nachrichten in die Header der Nachricht ein, zum Beispiel:
X-Spam-Flag: YES
X-Spam-Score: 6.263
X-Spam-Level: ******
Anhand dieser Zeilen kann man in Roundcube Filter einrichten, die die Nachrichten beim Eingehen der Nachricht in einen Spam-Ordner mit verdächtigen Nachrichten verschieben (siehe später folgenden Abschnitt).
Eingangsserver konfigurieren
Die Maileingangsserver mit Spamassassin lassen sich pro Domain konfigurieren, indem die MX-Records im DNS-Zonefile gegenüber dem Default-Zonefile angepasst werden.
Im Zonefile entfällt der Platzhalter "{MX_RR}". Stattdessen werden die folgenden MX-Records eingefügt:
{DOM_HOSTNAME}. IN MX 10 smailin1.hostsharing.net.
{DOM_HOSTNAME}. IN MX 10 smailin2.hostsharing.net.
{DOM_HOSTNAME}. IN MX 10 smailin3.hostsharing.net.
Zur Änderung der DNS-Zone siehe: https://www.hostsharing.net/doc/managed-operations-platform/zonefile/ Wer sich die Aktion auf der Shell nicht zutraut, möge bitte den "Webmaster on Demand" beauftragen.
Spam-Ordner
Mit dem folgenden Filter können Nachrichten, die von Spamassassin markiert wurden, automatisch in einen Spam-Ordner verschoben werden.
Alternative 3: SecureMX zubuchen
Über unseren Domain-Anbieter "Partnergate" bietet Hostsharing als dritte Alternative die kommerzielle Spam-Appliance von Cisco an. Das Produkt heißt bei Partnergate "SecureMX": https://www.hostsharing.net/loesungen/email/spam-abwehr/
Die Nutzung von SecureMX ist kostenpflichtig und wird auf Wunsch vom Hostsharing-Service eingerichtet.
Es ist zu beachten, dass bei der Nutzung von SecureMX alle eingehenden E-Mail Nachrichten über Server geleitet werden, die nicht unter der Kontrolle von Hostsharing stehen und proprietäre Software einsetzen. Dieser Sachverhalt muss vom Mitglied ggf. datenschutzrechtlich bewertet werden.