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

Docker部署Mailcow后SMTP无法连接PHP:问题排查求助

Docker部署Mailcow后SMTP连接异常排查

问题描述

通过Docker部署Mailcow邮件服务器,已配置DNS记录,服务器Nginx、Docker运行正常,但PHP连接SMTP时出现长时间等待或无法连接的情况。

已做测试

本地telnet测试

执行命令:

telnet 127.0.0.1 587

返回结果:

Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
220 mail.domain.com ESMTP Postcow

外部IP telnet测试

执行命令:

telnet 1xx.xxx.x5x.x0x 587

返回结果:

Trying xxx.xxx.xx.xx...
Connected to xxx.xx.xxx.xx.
Escape character is '^]'.
220 mail.domain.com ESMTP Postcow

当前Nginx配置

server {
    listen 80;
    listen [::]:80;

    server_name mail.domain.com


    location / {
        # auth_basic "Restricted Content";
        # auth_basic_user_file /etc/nginx/passwords/.htpasswd;
        proxy_pass http://1xx.xxx.xx.xx:8080/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_cache_bypass $http_upgrade;
    }
}

Cloudflare已配置对应DNS记录。


排查方向及解决方案

  1. Cloudflare代理模式问题
    若mail.domain.com的DNS记录设置为橙色云(代理模式),Cloudflare默认不会转发SMTP端口(587、465、25)的流量,会导致外部通过域名连接SMTP时被阻断。

    • 解决:将mail.domain.com的DNS记录改为灰色云(仅DNS解析,不代理),确保SMTP流量直接指向服务器IP。
  2. PHP连接配置错误
    检查PHP代码中的SMTP配置:

    • 确认使用mail.domain.com作为SMTP服务器地址,而非服务器IP(若域名被Cloudflare代理,IP访问可能正常但域名访问被拦截);
    • 确认端口为587,且开启了STARTTLS加密(Mailcow的587端口通常需要此配置);
    • 检查认证信息是否正确(用户名应为完整邮箱地址,密码对应邮箱的登录密码)。
  3. Mailcow容器端口映射问题
    检查Docker容器的端口映射,确保587端口已正确映射到主机:
    执行命令查看端口映射:

    docker ps | grep postfix
    

    确认输出中包含0.0.0.0:587->587/tcp或:::587->587/tcp,若映射异常,重启Mailcow服务:

    cd /path/to/mailcow-dockerized
    docker-compose down
    docker-compose up -d
    
  4. 防火墙/安全组规则
    虽然外部telnet能连接,但需确认服务器防火墙(如ufw、iptables)和云服务商安全组是否允许587端口的双向流量,尤其是出站流量(Mailcow发送邮件需要出站端口25、587等)。

  5. Nginx配置说明
    当前Nginx配置仅代理80端口的Web管理界面,和SMTP服务无关,无需修改此配置解决SMTP连接问题。


内容的提问来源于stack exchange,提问作者Tural Rzaxanov

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 05:54:22