Ubuntu 22.04 Postfix SMTP中继服务器批量垃圾邮件中继拦截及配额超限告警处理问询
Ubuntu 22.04 Postfix SMTP中继服务器批量垃圾邮件中继拦截及配额超限告警处理问询
看起来你的Postfix中继服务器正被批量往超限Gmail账户发邮件的请求困扰,还要保证Google Workspace的企业业务邮件不受影响,我来给你梳理几个可行的解决方案:
一、直接拦截非企业来源的中继请求(最优先)
你提到希望仅允许企业域名的中继,这是解决当前批量请求最直接的办法,可以通过Postfix的发件人访问控制实现:
- 修改
main.cf中的smtpd_sender_restrictions规则,添加发件人域名校验:
smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks, check_sender_access hash:/etc/postfix/sender_access, reject_unauth_destination
- 创建
/etc/postfix/sender_access文件,配置仅允许你的企业域名:
your-corporate-domain.com OK * REJECT Only authorized corporate senders are allowed
- 生成哈希映射并重载Postfix配置:
postmap /etc/postfix/sender_access systemctl reload postfix
这样所有非企业域名的发件请求都会被直接拒绝,从根源上挡住批量垃圾中继。
二、限制请求速率,遏制批量发送
即使是合法来源,也可以通过速率限制防止突发批量请求,在main.cf中添加以下配置:
# 单个客户端最大并发连接数 smtpd_client_connection_count_limit = 10 # 单个客户端每分钟最大发送邮件数 smtpd_client_message_rate_limit = 20 # 速率统计时间单位 anvil_rate_time_unit = 1m
重载配置后,就能有效限制单来源的批量请求频率,减少配额超限告警的产生。
三、优化Postfix告警与重试机制
针对收件人配额超限的频繁告警,可以调整Postfix的相关设置减少干扰:
- 延长延迟告警触发时间,把
delay_warning_time从默认的4小时调长,比如:
delay_warning_time = 24h
- 调整告警通知类别,只保留关键告警:
notify_classes = resource, software
这样不会频繁收到延迟投递的告警,只关注资源不足或软件错误类的关键信息。
四、第三方服务选型
如果不想自己维护规则,可考虑专业的邮件安全方案:
- 开源方案:比如MailScanner、Amavis,集成到Postfix中后能自动识别垃圾邮件、过滤非法发件人,成本低且可自定义规则,适合有运维能力的团队。
- 商业方案:比如Mimecast、Proofpoint,提供一站式的邮件安全防护,包含批量请求拦截、垃圾邮件过滤、配额超限处理等功能,无需自己维护规则,省心省力,适合对邮件稳定性要求高的企业。
五、确保Google Workspace业务不受影响
因为你的服务器用于转发Google Workspace邮件,需注意两点:
- 确保Google Workspace的IP段已包含在
mynetworks中,或者配置SASL认证让Workspace服务能正常通过中继。 - 在
sender_access文件中务必将你的企业域名设为OK,避免合法业务邮件被拦截。
总结下来,优先通过发件人域名限制+速率控制快速解决当前批量请求问题,后续根据业务复杂度再考虑引入第三方安全服务。
备注:内容来源于stack exchange,提问作者Tarik
相关产品推荐
相关产品推荐

