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

使用MailKit向MailTrap.io发送SMTP邮件时遇连接拒绝及SSL问题

解决MailKit连接Mailtrap.io SMTP的问题

我来帮你排查并解决这个问题,从你的代码和报错信息来看,主要是SMTP端口选择错误以及SSL/TLS配置不匹配导致的,咱们一步步来修正:

1. 先明确Mailtrap.io的正确SMTP参数

Mailtrap.io的免费测试SMTP服务,官方提供的有效端口和对应配置是:

  • SMTP服务器:smtp.mailtrap.io
  • 可选端口:
    • 465:强制SSL加密连接
    • 587:通过STARTTLS升级加密(推荐使用)
    • 2525:兼容无加密/STARTTLS模式
      你之前用的584、25都是错误端口,这是连接被拒绝的核心原因。

2. 修正后的完整可运行代码

下面是调整后的正确代码,我标注了关键修改点:

public async Task SendEmailAsync(string email, string subject, string message)
{
    try
    {
        var emailMessage = new MimeMessage();
        // 提示:From地址建议用Mailtrap控制台分配的测试发件邮箱,避免被系统拦截
        emailMessage.From.Add(new MailboxAddress("David", "davidnoreply@yourdomain.com"));
        emailMessage.To.Add(new MailboxAddress("", email));
        emailMessage.Subject = subject;
        emailMessage.Body = new TextPart("HTML") { Text = message };

        using (var client = new SmtpClient())
        {
            // 关键修改1:使用推荐的587端口
            // 关键修改2:第三个参数设为false,587端口先建立普通连接再升级TLS,不是直接SSL连接
            await client.ConnectAsync("smtp.mailtrap.io", 587, false);
            // 移除XOAUTH2认证机制,避免不必要的兼容问题
            client.AuthenticationMechanisms.Remove("XOAUTH2");
            // 注意异步方法要加await,之前的代码漏了
            await client.AuthenticateAsync("16729fdfa173b4", "0e6de61c67b069");
            await client.SendAsync(emailMessage);
            await client.DisconnectAsync(true);
        }
    }
    catch (Exception ex)
    {
        // 把原始异常也传递进去,方便后续排查
        throw new InvalidOperationException($"发送邮件失败:{ex.Message}", ex);
    }
}

3. 关键修正点解释

  • 端口错误:替换成Mailtrap官方支持的端口,直接解决"目标机器主动拒绝"的问题
  • SSL/TLS配置匹配:不同端口对应不同的加密模式,587端口不能直接用true开启SSL,要通过STARTTLS自动升级
  • 异步方法规范:AuthenticateAsync和SendAsync必须加await,否则会导致客户端提前释放,操作未完成就中断
  • 移除冗余配置:不需要手动设置LocalDomain,MailKit会自动处理,避免额外问题

4. 额外排查建议

如果还是报错,可以试试:

  • 核对Mailtrap控制台里的用户名和密码是否和代码里一致
  • 检查本地防火墙/代理是否拦截了SMTP流量
  • 换成2525端口,第三个参数设为false,测试无加密连接是否能成功

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 17:13:08