【发布时间】:2019-05-16 01:48:04
【问题描述】:
为什么使用标志 -Port 587 从 PowerShell 通过 Send-MailMessage 命令发送电子邮件会产生错误。
命令:
Send-Mailmessage -smtpServer mail.server.com -Port 587 -from "admin@domain.com" -to "user@domain.com" -subject "Test" -body "Test"
错误信息:
Send-Mailmessage : SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.7.0 必须先发出 STARTTLS 命令
PowerShell 文档说添加 -UseSSL 应指定发送 STARTTLS 命令,但即使添加此标志也可能无法解决您的问题。
命令:
Send-Mailmessage -smtpServer mail.server.com -Port 587 -UseSsl -from "admin@domain.com" -to "user@domain.com" -subject "Test" -body "Test"
错误信息:
Send-Mailmessage : 无法从传输连接读取数据:现有连接被远程主机强行关闭。
【问题讨论】:
标签: powershell ssl smtp tls1.2