Почему при отправке сообщения электронной почты из PowerShell с помощью команды Send-MailMessage с использованием флага -Port 587 выдается ошибка.
Команда:
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: Невозможно прочитать данные из транспортного соединения: существующее соединение было принудительно закрытоудаленный хост.