
誰かが私が抱えている問題に光を当ててくれるかどうか知りたかったのですが、現在、私はシンプルな postfix サーバーを持っていて、その前に PMG ゲートウェイがあります。PMG ゲートウェイにはスパム フィルターがあるため、スパムをユーザーのジャンク フォルダーにリダイレクトする必要があります。私はすでにこの Zimbra を達成しましたが、postfix では何かが欠けていると思います。私が実行した手順は次のとおりです。
- パッケージをインストールし、main.cfの末尾にこれを追加して修正します。
sudo apt-get install dovecot-sieve dovecot-managesieved
mailbox_command=/usr/lib/dovecot/deliver
編集する
/etc/dovecot/conf.d/90-sieve.conf
デフォルトの場所を設定するためにこの行を追加しました
sieve_default = /etc/dovecot/default.sieve
次にdovecotユーザーにファイルを読み込ませる
chgrp dovecot /etc/dovecot/conf.d/90-sieve.conf
ldaのプラグインにアクセスしてコメントを解除します
/etc/dovecot/conf.d/15-lda.conf mail_plugins = sieve
ファイルsieveを作成してコンパイルする
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";
}
それから
cd /etc/dovecot
sievec default.sieve
そしてdovecotに権限を与える
chgrp dovecot /etc/dovecot/default.svbin
- postfixとdovecotを再起動します
私はテストのスパムメールを送信します[メールアドレス]
xspamフラグを「はい」に設定していますが、迷惑メールフォルダではなく受信トレイに届き続けます
プロトコルを確認しました
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
答え1
Dovecot の設定をチェックして、sieve_default=
デフォルトの sieve スクリプトの目的のパスが設定されていることを確認します。
# doveconf | grep sieve_default
sieve_default = /var/lib/dovecot/sieve/default.sieve
また、ふるいフィルターの評価はすべてのアクションで停止するわけではありません。アイテムを複数のフォルダに保存することは完全に有効です。メールを1つのフォルダにのみ保存したい場合は、ブロックstop
の終わりの前にコマンドを追加します。{}
# 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;
}
によるデフォルト、sieveスクリプトの最後に到達すると、暗黙のkeep
行動、これにより、( などのアクションでstop
)終了しないすべての呼び出しは、これが明記されていない場合でも保持されます。
答え2
返信ありがとうございます。デフォルトの場所をこれに変更してうまくいきました。ありがとうございます。
##
## 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