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

Postfix结合Dovecot环境下公网大量认证失败的解决方案及访问控制咨询

Postfix结合Dovecot环境下公网大量认证失败的解决方案及访问控制咨询

嗨,看起来你已经用fail2ban做了基础的暴力破解防护,但既然你的场景完全不需要公网客户端访问邮箱,咱们可以从访问控制的根源上解决问题,比单纯封禁IP更彻底。下面给你几个针对性的可行方案:

1. 限制Dovecot仅监听本地/内网IP

直接让Dovecot不对外网开放监听端口,从根本上切断公网的连接请求:

  • 找到Dovecot的主配置文件(通常是/etc/dovecot/dovecot.conf),定位到listen参数
  • 将其修改为仅监听本地回环地址和你的内网网段,比如:
    listen = 127.0.0.1, 192.168.1.0/24
    
    (请根据你的实际内网IP段调整,比如10.0.0.0/8或172.16.0.0/12)
  • 如果Postfix和Dovecot部署在同一台服务器,还可以改用本地套接字通信,在Postfix的main.cf里确保:
    smtpd_sasl_path = private/auth
    
    同时Dovecot的conf.d/10-master.conf里配置对应的套接字权限,这样连内网IP都不需要暴露,安全性更高。
  • 修改完成后重启Dovecot服务:systemctl restart dovecot

2. 通过Postfix限制SASL认证的来源

在Postfix层面直接拒绝非内网的SASL认证请求,避免公网请求进入到Dovecot的认证环节:

  • 编辑Postfix的main.cf文件,添加或修改以下参数:
    smtpd_sasl_restrictions = permit_mynetworks, reject
    
  • 确保mynetworks参数已经包含你的内网网段,比如:
    mynetworks = 127.0.0.0/8, 192.168.1.0/24
    
    这个参数定义了Postfix信任的本地/内网网络,只有这些来源的请求才能进行SASL认证。
  • 重启Postfix服务生效:systemctl restart postfix

3. 防火墙层面拦截公网访问

用系统防火墙(iptables/ufw/firewalld)直接阻断公网对邮箱服务端口的访问,作为额外的防护层:

以iptables为例:

  • 允许内网IP访问Dovecot的IMAP/POP3端口:
    iptables -A INPUT -p tcp --dport 143 -s 192.168.1.0/24 -j ACCEPT
    iptables -A INPUT -p tcp --dport 993 -s 192.168.1.0/24 -j ACCEPT
    iptables -A INPUT -p tcp --dport 110 -s 192.168.1.0/24 -j ACCEPT
    iptables -A INPUT -p tcp --dport 995 -s 192.168.1.0/24 -j ACCEPT
    
  • 拒绝所有其他来源对这些端口的访问:
    iptables -A INPUT -p tcp --dport 143 -j DROP
    iptables -A INPUT -p tcp --dport 993 -j DROP
    iptables -A INPUT -p tcp --dport 110 -j DROP
    iptables -A INPUT -p tcp --dport 995 -j DROP
    
  • 如果需要限制Postfix的SMTP端口仅对内网开放,也可以添加类似规则针对25/587端口。

关于fail2ban的补充优化

如果你还是想保留fail2ban作为兜底防护,可以优化Dovecot的过滤规则,确保更精准地捕获认证失败日志:

  • 检查/etc/fail2ban/filter.d/dovecot.conf里的正则规则,确保能匹配你日志里的格式(比如你提供的pam_unix(dovecot:auth): authentication failure条目)
  • 可以调整bantime、maxretry等参数,让封禁策略更符合你的需求。

这些方案里,优先推荐修改Dovecot监听地址 + Postfix SASL限制的组合,从服务配置层面彻底阻断公网访问,防火墙可以作为额外的安全屏障。根据你的实际内网环境调整参数即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.17 11:29:43