Exim4 - 暂时冻结特定用户的外发电子邮件

Exim4 - 暂时冻结特定用户的外发电子邮件

我需要使用 exim4 暂时冻结特定发件人的外发电子邮件。发件人使用远程 SMTP(即通过 TCP/IP)登录。

我想要做的是冻结(但不拒绝)他的所有电子邮件,以便我可以检查队列并允许或禁止进一步处理。

任何帮助,将不胜感激。

答案1

您需要对文件进行以下更改exim.conf

在主配置部分,确保您已启用acl_smtp_mail如下控制:

acl_smtp_mail = acl_check_mail

确保更改acl_check_mail为处理访问控制列表的实际名称acl_smtp_mail

然后,在acl_check_rcptACL配置部分,创建一个新规则:

accept   condition = ${lookup{$sender_address}lsearch{/etc/exim/freezelist_sender_addresses}{1}{0}}
         control   = freeze/no_tell


保存配置文件。现在创建文件/etc/exim/freezelist_sender_addresses并将所有需要冻结的发件人地址放入此文件中,每行一个地址。确保为此文件设置正确的权限,以便 Exim 可以读取它。

从该地址发送的所有电子邮件/etc/exim/freezelist_sender_addresses现在都将被接受进入队列(前提是它们通过其他 ACL),然后被 Exim 自动冻结。

要取消冻结这些消息,请运行此命令,替换[电子邮件保护]邮件被冻结的发件人地址:

exiqgrep -i -f [email protected] | xargs exim -Mt 

答案2

此命令是否也可以用于通过电子邮件 ID 解冻,或者是不同的命令?

我的意思是,如果我想通过电子邮件 ID 解冻,可以使用这个吗?

exiqgrep -i -f 1pUg6E-0003Dt-83 | xargs exim -Mt

相关内容