Android

Installieren und integrieren Sie rspamd

Windows bootfähiger Stick - USB3.0 Treiber einfügen | integrieren - Treiber fehlt - [4K Video]

Windows bootfähiger Stick - USB3.0 Treiber einfügen | integrieren - Treiber fehlt - [4K Video]

Inhaltsverzeichnis:

Anonim

Dies ist der dritte Teil unseres Einrichtens und Konfigurierens eines Mailservers. In diesem Tutorial werden wir die Installation und Konfiguration des Rspamd-Spamfiltersystems und dessen Integration in unseren Mailserver durchführen und DKIM- und DMARC-DNS-Einträge erstellen.

Sie fragen sich vielleicht, warum wir uns für Rspamd und nicht für Spamassassin entscheiden. Rspamd wird aktiver in C gepflegt und geschrieben und ist viel schneller als Spamassassin, das in Perl geschrieben ist. Ein weiterer Grund ist, dass Rspamd mit einem DKIM-Signaturmodul geliefert wird, sodass wir keine andere Software zum Signieren unserer ausgehenden E-Mails verwenden müssen.

Voraussetzungen

Stellen Sie vor dem Fortfahren mit diesem Lernprogramm sicher, dass Sie als Benutzer mit sudo-Berechtigungen angemeldet sind.

Installieren Sie Redis

Redis wird von Rspamd als Speicher- und Zwischenspeichersystem verwendet, um es zu installieren, führen Sie einfach Folgendes aus:

sudo apt install redis-server

Ungebunden installieren

Unbound ist ein sehr sicherer, validierender, rekursiver und zwischenspeichernder DNS-Resolver.

Der Hauptzweck der Installation dieses Dienstes besteht darin, die Anzahl der externen DNS-Anforderungen zu verringern. Dieser Schritt ist optional und kann übersprungen werden.

sudo apt update sudo apt install unbound

Die Standardeinstellungen für "Ungebunden" sollten für die meisten Server ausreichen.

Führen Sie die folgenden Befehle aus, um "Ungebunden" als primären DNS-Resolver Ihres Servers festzulegen:

sudo echo "nameserver 127.0.0.1" >> /etc/resolvconf/resolv.conf.d/head sudo resolvconf -u Wenn Sie resolvconf nicht verwenden, resolvconf Sie die Datei /etc/resolv.conf manuell bearbeiten.

Installieren Sie Rspamd

Wir werden die neueste stabile Version von Rspamd aus dem offiziellen Repository installieren.

Beginnen Sie mit der Installation der erforderlichen Pakete:

sudo apt install software-properties-common lsb-release sudo apt install lsb-release wget

Fügen Sie den Repository-GPG-Schlüssel mit dem folgenden Befehl wget zu Ihrem apt sources-Schlüsselbund hinzu:

wget -O- https://rspamd.com/apt-stable/gpg.key | sudo apt-key add -

Aktivieren Sie das Rspamd-Repository, indem Sie Folgendes ausführen:

echo "deb http://rspamd.com/apt-stable/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/rspamd.list

Sobald das Repository aktiviert ist, aktualisieren Sie den Paketindex und installieren Sie Rspamd mit den folgenden Befehlen:

sudo apt update sudo apt install rspamd

Konfigurieren Sie Rspamd

Anstatt die Standardkonfigurationsdateien zu /etc/rspamd/local.d/local.d/ Verzeichnis /etc/rspamd/local.d/local.d/ neue Dateien /etc/rspamd/local.d/local.d/ die die Standardeinstellung überschreiben.

Standardmäßig überwacht der normal worker Rspamd-Worker, der E-Mail-Nachrichten durchsucht, alle Schnittstellen an Port 11333. Erstellen Sie die folgende Datei, um den normalen Rspamd-Worker so zu konfigurieren, dass er nur die localhost-Schnittstelle überwacht:

/etc/rspamd/local.d/worker-normal.inc

bind_socket = "127.0.0.1:11333";

Der proxy worker überwacht Port 11332 und unterstützt das Milter-Protokoll. Damit Postfix mit Rspamd kommunizieren kann, müssen wir den Milter-Modus aktivieren:

/etc/rspamd/local.d/worker-proxy.inc

bind_socket = "127.0.0.1:11332"; milter = yes; timeout = 120s; upstream "local" { default = yes; self_scan = yes; }

Als Nächstes müssen wir ein Kennwort für den controller worker Server einrichten, der den Zugriff auf die Rspamd-Webschnittstelle ermöglicht. So generieren Sie ein verschlüsseltes Kennwort:

rspamadm pw --encrypt -p P4ssvv0rD

Die Ausgabe sollte ungefähr so ​​aussehen:

$2$khz7u8nxgggsfay3qta7ousbnmi1skew$zdat4nsm7nd3ctmiigx9kjyo837hcjodn1bob5jaxt7xpkieoctb Vergessen Sie nicht, das Kennwort ( P4ssvv0rD ) in ein sichereres Kennwort zu ändern.

Kopieren Sie das Passwort von Ihrem Terminal und fügen Sie es in die Konfigurationsdatei ein:

/etc/rspamd/local.d/worker-controller.inc

password = "$2$khz7u8nxgggsfay3qta7ousbnmi1skew$zdat4nsm7nd3ctmiigx9kjyo837hcjodn1bob5jaxt7xpkieoctb";

Später werden wir Nginx als Reverse-Proxy für den Controller-Worker-Webserver konfigurieren, damit wir auf die Rspamd-Weboberfläche zugreifen können.

Legen Sie Redis als Backend für Rspamd-Statistiken fest, indem Sie der Datei classifier-bayes.conf die folgenden Zeilen classifier-bayes.conf :

/etc/rspamd/local.d/classifier-bayes.conf

servers = "127.0.0.1"; backend = "redis";

Öffnen Sie die Datei milter_headers.conf und setzen Sie die milter-Header:

/etc/rspamd/local.d/milter_headers.conf

use =;

Weitere Informationen zu den Milterköpfen finden Sie hier.

Starten Sie den Rspamd-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl restart rspamd

Konfigurieren Sie Nginx

Im ersten Teil dieser Reihe haben wir einen Nginx-Serverblock für die PostfixAdmin-Instanz erstellt.

Öffnen Sie die Nginx-Konfigurationsdatei und fügen Sie die folgende, gelb hervorgehobene Location-Direktive hinzu:

/etc/nginx/sites-enabled/mail.linuxize.com.conf

… location /rspamd { proxy_pass http://127.0.0.1:11334/; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }…

Laden Sie den Nginx-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl reload nginx

rspamadm pw Sie zu https://mail.linuxize.com/rspamd/ , geben Sie das Kennwort ein, das Sie zuvor mit dem Befehl rspamadm pw generiert haben, und die Rspamd-Weboberfläche wird angezeigt.

Postfix konfigurieren

Wir müssen Postfix konfigurieren, um den Rspamd Milter zu verwenden.

Führen Sie den folgenden Befehl aus, um die Postfix-Hauptkonfigurationsdatei zu aktualisieren:

sudo postconf -e "milter_protocol = 6" sudo postconf -e "milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_authen}" sudo postconf -e "milter_default_action = accept" sudo postconf -e "smtpd_milters = inet:127.0.0.1:11332" sudo postconf -e "non_smtpd_milters = inet:127.0.0.1:11332"

Starten Sie den Postfix-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl restart postfix

Dovecot konfigurieren

Wir haben Dovecot bereits im zweiten Teil dieser Serie installiert und konfiguriert. Jetzt werden wir das Siebfiltermodul installieren und Dovecot in Rspamd integrieren.

Installieren Sie zunächst das Dovecot-Filtermodul:

sudo apt install dovecot-sieve dovecot-managesieved

Sobald die Pakete installiert sind, öffnen Sie die folgenden Dateien und bearbeiten Sie die gelb markierten Zeilen.

/etc/dovecot/conf.d/20-lmtp.conf

… protocol lmtp { postmaster_address = [email protected] mail_plugins = $mail_plugins sieve }… /etc/dovecot/conf.d/20-imap.conf

… protocol imap {… mail_plugins = $mail_plugins imap_quota imap_sieve… }… /etc/dovecot/conf.d/20-managesieve.conf

… service managesieve-login { inet_listener sieve { port = 4190 }… }… service managesieve { process_limit = 1024 }… /etc/dovecot/conf.d/90-sieve.conf

plugin {… # sieve = file:~/sieve;active=~/.dovecot.sieve sieve_plugins = sieve_imapsieve sieve_extprograms sieve_before = /var/mail/vmail/sieve/global/spam-global.sieve sieve = file:/var/mail/vmail/sieve/%d/%n/scripts;active=/var/mail/vmail/sieve/%d/%n/active-script.sieve imapsieve_mailbox1_name = Spam imapsieve_mailbox1_causes = COPY imapsieve_mailbox1_before = file:/var/mail/vmail/sieve/global/report-spam.sieve imapsieve_mailbox2_name = * imapsieve_mailbox2_from = Spam imapsieve_mailbox2_causes = COPY imapsieve_mailbox2_before = file:/var/mail/vmail/sieve/global/report-ham.sieve sieve_pipe_bin_dir = /usr/bin sieve_global_extensions = +vnd.dovecot.pipe…. }

Speichern und schließen Sie die Dateien.

Erstellen Sie ein Verzeichnis für die Siebskripte:

mkdir -p /var/mail/vmail/sieve/global

Erstellen Sie einen globalen Filter, um als Spam markierte E-Mails in das Spam Verzeichnis zu verschieben:

/var/mail/vmail/sieve/global/spam-global.sieve

require; if anyof(header:contains "YES", header:contains "Yes", header:contains "*** SPAM ***") { fileinto:create "Spam"; stop; }

Die folgenden zwei Siebskripte werden ausgelöst, wenn Sie eine E-Mail in das Spam Verzeichnis verschieben oder aus diesem entfernen:

/var/mail/vmail/sieve/global/report-spam.sieve

require; pipe:copy "rspamc"; /var/mail/vmail/sieve/global/report-ham.sieve

require; pipe:copy "rspamc";

Starten Sie den Dovecot-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl restart dovecot

Kompilieren Sie die Siebskripte und stellen Sie die richtigen Berechtigungen ein:

sievec /var/mail/vmail/sieve/global/spam-global.sieve sievec /var/mail/vmail/sieve/global/report-spam.sieve sievec /var/mail/vmail/sieve/global/report-ham.sieve sudo chown -R vmail: /var/mail/vmail/sieve/

Erstellen Sie DKIM-Schlüssel

DomainKeys Identified Mail (DKIM) ist eine E-Mail-Authentifizierungsmethode, die den Kopfzeilen ausgehender Nachrichten eine kryptografische Signatur hinzufügt. Auf diese Weise kann der Empfänger überprüfen, ob eine E-Mail, die behauptet, von einer bestimmten Domain zu stammen, tatsächlich vom Eigentümer dieser Domain autorisiert wurde. Der Hauptzweck ist es, gefälschte E-Mail-Nachrichten zu verhindern.

Wir können verschiedene DKIM-Schlüssel für alle unsere Domains und sogar mehrere Schlüssel für eine einzelne Domain haben, aber zur Vereinfachung dieses Artikels werden wir einen einzigen DKIM-Schlüssel verwenden, der später für alle neuen Domains verwendet werden kann.

Erstellen Sie ein neues Verzeichnis zum Speichern des DKIM-Schlüssels und generieren Sie ein neues DKIM-Schlüsselpaar mit dem Dienstprogramm rspamadm :

sudo mkdir /var/lib/rspamd/dkim/ rspamadm dkim_keygen -b 2048 -s mail -k /var/lib/rspamd/dkim/mail.key | sudo tee -a /var/lib/rspamd/dkim/mail.pub rspamadm dkim_keygen -b 2048 -s mail -k /var/lib/rspamd/dkim/mail.key | sudo tee -a /var/lib/rspamd/dkim/mail.pub

Im obigen Beispiel verwenden wir mail als DKIM-Selektor.

Sie sollten nun zwei neue Dateien im Verzeichnis /var/lib/rspamd/dkim/ , mail.key die unsere private Schlüsseldatei ist, und mail.pub eine Datei, die den öffentlichen DKIM-Schlüssel enthält. Wir werden unsere DNS-Zoneneinträge später aktualisieren.

Legen Sie die richtigen Eigentumsrechte und Berechtigungen fest:

sudo chown -R _rspamd: /var/lib/rspamd/dkim sudo chmod 440 /var/lib/rspamd/dkim/*

Jetzt müssen wir Rspamd mitteilen, wo der DKIM-Schlüssel gesucht werden soll. Der Name des Selektors und die letzte Zeile ermöglichen die DKIM-Signatur für Alias-Absenderadressen. Erstellen Sie dazu eine neue Datei mit folgendem Inhalt:

/etc/rspamd/local.d/dkim_signing.conf

selector = "mail"; path = "/var/lib/rspamd/dkim/$selector.key"; allow_username_mismatch = true;

Rspamd unterstützt auch das Signieren für ARC-Signaturen (Authenticated Received Chain). Weitere Informationen zur ARC-Spezifikation finden Sie hier.

Rspamd verwendet das DKIM-Modul für den Umgang mit ARC-Signaturen, sodass wir einfach die vorherige Konfiguration kopieren können:

sudo cp /etc/rspamd/local.d/dkim_signing.conf /etc/rspamd/local.d/arc.conf

Starten Sie den Rspamd-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl restart rspamd

DNS-Einstellungen

Wir haben bereits ein DKIM-Schlüsselpaar erstellt und müssen jetzt unsere DNS-Zone aktualisieren. Der öffentliche DKIM-Schlüssel wird in der Datei mail.pub gespeichert. Der Inhalt der Datei sollte folgendermaßen aussehen:

cat /var/lib/rspamd/dkim/mail.pub

mail._domainkey IN TXT ("v=DKIM1; k=rsa; " "p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqdBRCqYzshc4LmmkxUkCH/rcIpSe/QdNIVmBrgqZmZ5zzWQi7ShdFOH7V32/VM1VRk2pkjDV7tmfbwslsymsfxgGhVHbU0R3803uRfxAiT2mYu1hCc9351YpZF4WnrdoA3BT5juS3YUo5LsDxvZCxISnep8VqVSAZOmt8wFsZKBXiIjWuoI6XnWrzsAfoaeGaVuUZBmi4ZTg0O4yl" "nVlIz11McdZTRe1FlONOzO7ZkQFb7O6ogFepWLsM9tYJ38TFPteqyO3XBjxHzp1AT0UvsPcauDoeHUXgqbxU7udG1t05f6ab5h/Kih+jisgHHF4ZFK3qRtawhWlA9DtS35DlwIDAQAB");

v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqdBRCqYzshc4LmmkxUkCH/rcIpSe/QdNIVmBrgqZmZ5zzWQi7ShdFOH7V32/VM1VRk2pkjDV7tmfbwslsymsfxgGhVHbU0R3803uRfxAiT2mYu1hCc9351YpZF4WnrdoA3BT5juS3YUo5LsDxvZCxISnep8VqVSAZOmt8wFsZKBXiIjWuoI6XnWrzsAfoaeGaVuUZBmi4ZTg0O4ylnVlIz11McdZTRe1FlONOzO7ZkQFb7O6ogFepWLsM9tYJ38TFPteqyO3XBjxHzp1AT0UvsPcauDoeHUXgqbxU7udG1t05f6ab5h/Kih+jisgHHF4ZFK3qRtawhWlA9DtS35DlwIDAQAB

Wir werden auch eine domänenbasierte Nachrichtenauthentifizierung ( DMARC ) erstellen, die dem empfangenden Server mitteilt, ob eine E-Mail von einem bestimmten Absender akzeptiert werden soll oder nicht. Grundsätzlich schützt es Ihre Domain vor direktem Domain-Spoofing und verbessert die Reputation Ihrer Domain.

Wir werden die folgenden DMARC-Richtlinien implementieren:

_dmarc IN TXT "v=DMARC1; p=none; adkim=r; aspf=r;"

Lassen Sie uns den obigen DMARC-Datensatz aufschlüsseln:

  • v=DMARC1 - Dies ist die DMARC-Kennung p=none - Hiermit wird dem Empfänger v=DMARC1 was mit Nachrichten zu tun ist, bei denen DMARC fehlschlägt. In unserem Fall ist es auf none gesetzt, was bedeutet, dass keine Aktion ausgeführt wird, wenn eine Nachricht DMARC nicht erfolgreich ist. Sie können auch "reject" oder " adkim=r und " aspf=r - DKIM und SPF Ausrichtung, r für "Relaxed" und s für "Strict". In unserem Fall verwenden wir "Relaxed Alignment" für DKIM und SPF.

Wie zuvor, wenn Sie einen eigenen DNS-Bindungsserver verwenden, müssen Sie nur den Eintrag kopieren und in Ihre _dmarc Wenn Sie einen anderen DNS-Anbieter verwenden, müssen Sie einen TXT- _dmarc mit _dmarc als Namen und v=DMARC1; p=none; adkim=r; aspf=r; erstellen v=DMARC1; p=none; adkim=r; aspf=r; v=DMARC1; p=none; adkim=r; aspf=r; als Wert / Inhalt.

Es kann eine Weile dauern, bis die DNS-Änderungen übernommen werden. Mit dem Befehl dig können Sie überprüfen, ob die Datensätze weitergegeben wurden:

dig mail._domainkey.linuxize.com TXT +short

"v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqdBRCqYzshc4LmmkxUkCH/rcIpSe/QdNIVmBrgqZmZ5zzWQi7ShdFOH7V32/VM1VRk2pkjDV7tmfbwslsymsfxgGhVHbU0R3803uRfxAiT2mYu1hCc9351YpZF4WnrdoA3BT5juS3YUo5LsDxvZCxISnep8VqVSAZOmt8wFsZKBXiIjWuoI6XnWrzsAfoaeGa" "VuUZBmi4ZTg0O4ylnVlIz11McdZTRe1FlONOzO7ZkQFb7O6ogFdepWLsM9tYJ38TFPteqyO3XBjxHzp1AT0UvsPcauDoeHUXgqbxU7udG1t05f6ab5h/Kih+jisgHHF4ZFK3qRtawhWlA9DtS35DlwIDAQAB"

dig _dmarc.linuxize.com TXT +short

"v=DMARC1; p=none; adkim=r; aspf=r;"

Sie können auch die aktuelle DMARC-Richtlinie Ihrer Domain einsehen oder hier Ihre eigene DMARC-Richtlinie erstellen.

Fazit

Das war's für diesen Teil des Tutorials. Im nächsten Teil dieser Serie werden wir mit der Installation und Konfiguration von RoundCube fortfahren.

Mail-Server Postfix Dovecot DNS Rspamd

Dieser Beitrag ist Teil der Reihe Einrichten und Konfigurieren eines Mailservers.

Andere Beiträge in dieser Reihe:

• Richten Sie mit PostfixAdmin einen Mailserver ein. • Installieren und konfigurieren Sie Postfix und Dovecot. • Installieren und integrieren Sie Rspamd. • Installieren und konfigurieren Sie Roundcube Webmail