
Ich habe mich gefragt, ob jemand etwas Licht in mein Problem bringen könnte. Derzeit habe ich einen einfachen Postfix-Server und davor ein PMG-Gateway. Da das PMGateway über Spamfilter verfügt, muss ich den Spam umleiten, sodass er in den Junk-Ordner des Benutzers geht. Das habe ich mit Zimbra bereits geschafft, aber bei Postfix glaube ich, dass mir etwas fehlt. Dies waren die Schritte, die ich unternommen habe
- Installieren Sie das Paket und ändern Sie es, indem Sie es unten in main.cf hinzufügen.
sudo apt-get install dovecot-sieve dovecot-managesieved
mailbox_command=/usr/lib/dovecot/deliver
dann bearbeiten
/etc/dovecot/conf.d/90-sieve.conf
und fügte diese Zeile hinzu, um den Standardspeicherort zu konfigurieren
sieve_default = /etc/dovecot/default.sieve
Machen Sie dann den Dovecot-Benutzer zum Lesen der Datei
chgrp dovecot /etc/dovecot/conf.d/90-sieve.conf
gehe zum Plugin von lda und entkommentiere
/etc/dovecot/conf.d/15-lda.conf mail_plugins = sieve
Datei Sieve erstellen und kompilieren
root@mail:/etc/dovecot# cat /etc/dovecot/default.sieve
require "fileinto";
#Filter email based on a subject
if header :contains "X-Spam-Flag" "YES" {
fileinto "Junk";
}
Dann
cd /etc/dovecot
sievec default.sieve
und geben Sie dovecot die Berechtigungen
chgrp dovecot /etc/dovecot/default.svbin
- Postfix und Dovecot neu starten
Ich sende eine Test-Spam-E-Mail von[email geschützt]
und es markiert das xspam-Flag auf „Ja“, aber es landet weiterhin im Posteingang statt im Junk-Ordner
Ich habe die Protokolle überprüft
root@mail:/etc/dovecot# doveconf | grep protocols
protocols = " imap sieve pop3"
ssl_protocols = !SSLv2 !SSLv3
Return-Path: <[email protected]>
X-Original-To: [email protected]
Delivered-To: [email protected]
Received: from mail.mydomain.com (unknown [192.168.1.248])
(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))
(No client certificate requested)
by mail.mydomain.com (Postfix) with ESMTPS id CB3162033C
for <[email protected]>; Sun, 25 Jul 2021 10:54:03 -0500 (COT)
Received: from mail.mydomain.com (localhost.localdomain [127.0.0.1])
by mail.mydomain.com (Proxmox) with ESMTP id 3DC215C2F3E
for <[email protected]>; Sun, 25 Jul 2021 10:48:19 -0500 (-05)
Received-SPF: softfail (gmail.com ... _spf.google.com: Sender is not authorized by default to use '[email protected]' in 'mfrom' identity, however domain is not currently prepared for false failures (mechanism '~all' matched)) receiver=mail.mydomain.com; identity=mailfrom; envelope-from="[email protected]"; helo=emkei.cz; client-ip=101.99.94.155
Authentication-Results: mail.mydomain.com; dmarc=fail (p=none dis=none) header.from=gmail.com
Authentication-Results: mail.mydomain.com; dkim=none; dkim-atps=neutral
Received: from emkei.cz (emkei.cz [101.99.94.155])
(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))
(No client certificate requested)
by mail.mydomain.com (Proxmox) with ESMTPS id 6003D5C0F66
for <[email protected]>; Sun, 25 Jul 2021 10:48:16 -0500 (-05)
Received: by emkei.cz (Postfix, from userid 33)
id B52D62413E; Sun, 25 Jul 2021 17:48:13 +0200 (CEST)
To: [email protected]
subject: SPAM: test
From: "test" <[email protected]>
X-Priority: 3 (Normal)
Importance: Normal
Errors-To: [email protected]
Reply-To: [email protected]
Content-Type: text/plain; charset=utf-8
Message-Id: <[email protected]>
Date: Sun, 25 Jul 2021 17:48:13 +0200 (CEST)
X-SPAM-LEVEL: Spam detection results: 6
BAYES_50 0.8 Bayes spam probability is 40 to 60%
DKIM_ADSP_CUSTOM_MED 0.001 No valid author signature, adsp_override is CUSTOM_MED
FORGED_GMAIL_RCVD 1 'From' gmail.com does not match 'Received' headers
FREEMAIL_FROM 0.001 Sender email is commonly abused enduser mail provider (vhfgyut[at]hotmail.com) (test[at]gmail.com) (test[at]gmail.com) (test[at]gmail.com) (test[at]gmail.com) (test[at]gmail.com)
NML_ADSP_CUSTOM_MED 0.9 ADSP custom_med hit, and not from a mailing list
SPF_HELO_PASS -0.001 SPF: HELO matches SPF record
SPF_SOFTFAIL 0.665 SPF: sender does not match SPF record (softfail)
SPOOFED_FREEMAIL 1.224 -
SPOOF_GMAIL_MID 1.498 From Gmail but it doesn't seem to be...
X-Spam-Flag: Yes
test
Antwort1
Überprüfen Sie die Dovecot-Konfiguration, sieve_default=
um zu bestätigen, dass Sie den vorgesehenen Pfad Ihres Standard-Sieve-Skripts konfiguriert haben.
# doveconf | grep sieve_default
sieve_default = /var/lib/dovecot/sieve/default.sieve
Außerdem wird die Siebfilterauswertung nicht bei allen Aktionen gestoppt. Es ist vollkommen in Ordnung, ein Element in mehreren Ordnern abzulegen. Wenn Sie eine E-Mail in einem Ordner und nur in diesem Ordner haben möchten, fügen Sie stop
vor dem Ende des {}
Blocks einen Befehl hinzu
# cat /etc/dovecot/default.sieve
require "fileinto";
# filter email based on a header added by proxmox mail gateway
if header :contains "X-Spam-Flag" "YES" {
fileinto "Junk";
stop;
}
VonStandard, das Ende eines Siebskripts erreicht, führt einimplizite keep
Aktion, sodass jeder Aufruf, der nicht endet (bei einer Aktion wie stop
), beibehalten wird, auch wenn dies nicht ausdrücklich angegeben wird.
Antwort2
Vielen Dank für die Antwort. Ich musste den Standardspeicherort hier ändern und das hat funktioniert. Danke
##
## Settings for the Sieve interpreter
##
# Do not forget to enable the Sieve plugin in 15-lda.conf and 20-lmtp.conf
# by adding it to the respective mail_plugins= settings.
plugin {
# The path to the user's main active script. If ManageSieve is used, this the
# location of the symbolic link controlled by ManageSieve.
# sieve = ~/.dovecot.sieve
# The default Sieve script when the user has none. This is a path to a global
# sieve script file, which gets executed ONLY if user's private Sieve script
# doesn't exist. Be sure to pre-compile this script manually using the sievec
# command line tool.
# --> See sieve_before fore executing scripts before the user's personal
# script.
#sieve_default = /var/lib/dovecot/sieve/default.sieve
sieve_default = /etc/dovecot/default.sieve