You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Exim4中拒绝子域名相关邮件及特定邮箱邮件的技术咨询

Exim4中拒绝子域名相关邮件及特定邮箱邮件的技术咨询

当然可以啦!Exim4的配置灵活性拉满,不管是要拒绝整个子域名的邮件,还是临时拦截某个特定邮箱,都有靠谱的实现方法,下面给你一步步拆解:

一、拒绝整个子域名(比如sub.example.com)的邮件

有两种常用方式,按需选就行:

  • ACL收件阶段拦截:这是最常用的方法。你可以编辑Exim4的主配置文件(通常是/etc/exim4/exim4.conf,如果是拆分配置结构,就找/etc/exim4/conf.d/acl/acl_check_rcpt),在收件检查的ACL段落里加这么一段规则:
deny
  domains = sub.example.com
  message = Emails to sub.example.com are temporarily rejected

保存配置后,所有发往sub.example.com下任何邮箱的邮件都会被直接拒绝,发送方会收到你设置的提示信息。

  • 用redirect路由器拦截:如果是临时需求,也可以通过路由器来实现。在配置文件的路由器部分添加:
reject_subdomain:
  driver = redirect
  domains = sub.example.com
  allow_fail
  data = :fail: Emails to this subdomain are temporarily blocked

这种方式会直接返回失败状态码,明确告诉发送方该子域名的邮件无法送达。

二、临时拒绝特定邮箱(比如new-task@sub.example.com)

针对你提到的“用户循环发邮件导致连接过多”的场景,精准拦截单个邮箱就够了,还是用ACL来实现:
编辑收件检查的ACL,添加以下规则:

deny
  recipients = new-task@sub.example.com
  message = Emails to new-task@sub.example.com are temporarily rejected due to excessive connections

这个规则只会拦截发往new-task@sub.example.com的邮件,其他邮箱完全不受影响,刚好能打断邮件循环,缓解服务器的连接压力。

最后提醒

修改完配置后,记得重启Exim4服务让配置生效,命令是:

systemctl restart exim4  # Debian/Ubuntu系系统
# 或者
service exim restart     # 其他类Unix系统

如果后续需要恢复服务,只要把对应的规则注释掉或者删除,再重启服务就可以啦。

备注:内容来源于stack exchange,提问作者Tom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 14:54:50