为了替各个系统建立测试 EMail 发信的环境,我使用 hMailServer 建立收发 EMail 伺服器,并用 openssl 建立自签凭证供 SSL 使用。
使用 .NET 8 的 SmtpClient 测试发信,测 25 port 发信不启用 SSL (明文通道发信)-理所当然地成功,但测发信到 465 port + 启用 SSL/TLS 就是一直 Timeout,找遍了 EMail 伺服器设置、SSL 证书及 TLS 设定都找不到任何原因...又喷了一个下午。
接近下班时间,赶快往下测 587 port + StartTLS 发信并启用SSL,结果一下就成功,证明下午的查各种设置、设定都搞错方向了,问题就是「EMail 伺服器启用 SSL/TLS」!
google「.net smtp client tls」果然在SMTP and Implicit TLS from a C# .NET application 找到了正解!
结论就是 .NET SmtpClient:
本文同步发表至我的Blog