Powershell отправка почты с авторизацией через SMTP сервер Яндекса
#Адрес сервера SMTP для отправки
$serverSmtp = "smtp.yandex.ru"
#Порт сервера
$port = 587
#От кого
$From = "login@yandex.ru"
#Кому
$To = "myMail@mail.ru"
#Тема письма
$subject = "Письмо с вложением"
#Логин и пароль от ящики с которого отправляете login@yandex.ru
$user = "login"
$pass = "12345678"
#Путь до файла
$file = "C:\arhive.zip"
#Создаем два экземпляра класса
$att = New-object Net.Mail.Attachment($file)
$mes = New-Object System.Net.Mail.MailMessage
#Формируем данные для отправки
$mes.From = $from
$mes.To.Add($to)
$mes.Subject = $subject
$mes.IsBodyHTML = $true
$mes.Body = "<h1>Тестовое письмо</h1>"
#Добавляем файл
$mes.Attachments.Add($att)
#Создаем экземпляр класса подключения к SMTP серверу
$smtp = New-Object Net.Mail.SmtpClient($serverSmtp, $port)
#Сервер использует SSL
$smtp.EnableSSL = $true
#Создаем экземпляр класса для авторизации на сервере яндекса
$smtp.Credentials = New-Object System.Net.NetworkCredential($user, $pass);
#Отправляем письмо, освобождаем память
$smtp.Send($mes)
$att.Dispose()