Exim4:受信者アドレスのリストをブロックする方法

Exim4:受信者アドレスのリストをブロックする方法

すべての受信者に送信されたメッセージをキャプチャするために、exim4設定に次のルータディレクティブを追加しました。

local_catchall:
 debug_print = "R: catchall for $local_part@$domain"
 driver = redirect
 domains = +local_domains
 allow_fail
 allow_defer
 data = johanna

一部をどのように除外できますか?受信者住所は可能な送信者の住所と同じです。

acl_check_data: 
 strong textdeny senders = /etc/deny_senders 

答え1

使用conditionルーターのオプションとシングルキークエリ良い

condition = ${lookup {$local_part@$domain} lsearch {/etc/deny_recips} {0} {1}}

使用できるacl_smtp_rcpt代わりに、SMTP入力専用です。必要に応じて拡張してください。

deny recipients = /etc/deny_recips

答え2

以下を使用できます。

deny
  condition = ${lookup{$local_part}nwildlsearch{/path/to/black.list}{yes}{no}}                                                                          
  message = User is black listed. Go away. 

利点は、black.listファイルで正規表現を使用できることです。欠点は、black.listファイルで正規表現を使用できることです。そのため、多くのテスト(通過ecim -v -bt 1.2.3.4 …)が必要です。確実にする正規表現が正しいです。

私のファイルはblack.list次のとおりです。

^Diana.*$
^Evelina.*$
^Julia.*$ 
^Katherin.*$
^Olga.*$
^Violette.*$
^fax$                                                                                                                                                   
^sales$

バラよりこの問題残念ながらDebian / Ubuntuを使用している場合...

関連情報