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

OTRS使用AWS SES发送邮件失败:邮件入队却无法发送

解决OTRS通过AWS SES发送邮件时的队列阻塞问题

我来帮你拆解下这个问题——从错误日志来看,核心症结是OTRS无法连接到AWS SES的SMTP服务器 email-smtp.us-east-1.amazonaws.com。咱们一步步排查定位:

  • 第一步:先确认服务器网络连通性
    先在OTRS所在服务器上,测试能否正常访问SES的SMTP端口(常用587或465)。可以用这两个命令快速验证:

    # 测试587端口(STARTTLS)
    telnet email-smtp.us-east-1.amazonaws.com 587
    # 或者用nc测试465端口(SSL/TLS)
    nc -zv email-smtp.us-east-1.amazonaws.com 465
    

    如果连接失败,大概率是服务器防火墙、VPC安全组封禁了这些出站端口,或者DNS解析异常。可以再跑个DNS解析测试确认:

    nslookup email-smtp.us-east-1.amazonaws.com
    
  • 第二步:核对AWS SES的SMTP配置细节
    确保OTRS里的SMTP参数完全匹配AWS SES要求:

    • 服务器地址:确认是email-smtp.us-east-1.amazonaws.com(要和你的SES账号所属区域一致)
    • 端口:优先用587(STARTTLS)或465(SSL/TLS),不要用默认的25端口(很多服务器会封禁)
    • 认证信息:必须用AWS SES控制台生成的专用SMTP凭证(不是你的AWS账号密码,在SES控制台的「SMTP设置」里创建)
    • 加密方式:587对应STARTTLS,465对应SSL/TLS,两者要匹配
  • 第三步:检查OTRS的邮件发送配置
    登录OTRS后台,进入「Admin -> System Configuration -> MailModule」,确认以下关键配置:

    • MailModule 设置为 Kernel::System::Mail::SMTP
    • SMTPHost 准确填写 email-smtp.us-east-1.amazonaws.com
    • SMTPPort 设为587或465
    • SMTPAuth 开启(设为yes)
    • SMTPUser 和 SMTPPass 填入正确的SES SMTP凭证

    也可以手动触发队列发送,看看会不会输出更详细的错误信息:

    /opt/otrs/bin/otrs.Console.pl Maint::Email::MailQueue --send
    
  • 第四步:确认AWS SES的账号状态

    • 检查你的SES账号是否处于沙箱模式:沙箱内只能发送到已验证的邮箱地址,且有严格的发送配额,批量发送很容易被阻塞。如果是沙箱状态,需要申请移出。
    • 验证SMTP凭证对应的IAM用户是否拥有ses:SendRawEmail权限,策略配置是否正确。
    • 查看SES控制台的「发送配额」,确认有没有超出当日发送上限导致无法投递。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 10:31:19