===== Отправка почты из PowerShell =====
==== Локальная отправка ====
Мы можем отправлять почту из //PowerShell// с одного из //Exchange// следующим образом. Пример отправки сообщения через конкретный сервер без вложения:
Send-MailMessage -To recipient@arasaka.local -from sender@arasaka.local -Subject 'Mail Subject' -SmtpServer 10.88.88.22 -Body 'Email body' -Encoding UTF8
А вот пример с вложением в виде текстового файла:
Send-MailMessage -To recipient@arasaka.local -from sender@arasaka.local -Subject 'Mail Subject' -SmtpServer 10.88.88.22 -Body 'Email body' -Attachments 'C:\somefile.txt' -Encoding UTF8
==== Отправка почты с авторизацией по SMTP ====
Данный //PowerShell// код отправит почту по //SMTP// с авторизацией пользователя //Exchange//.
:!: //SMTP//-коннектор на 25-м порту, в отличе от коннектора, слушающего на 587 гораздо охотнее принимает логин в формате //primary email//, а не //DOMAIN\USER//.
$cred = New-Object System.Management.Automation.PSCredential (
"testuser@domain.ru",
(ConvertTo-SecureString "SomePassw0rd" -AsPlainText -Force)
)
Send-MailMessage `
-SmtpServer "server.domain.ru" `
-Port 25 `
-Credential $cred `
-From "testuser@domain.ru" `
-To "testuser2@domain.ru" `
-Subject "Test message" `
-Body "Test SMTP message from PowerShell"
{{tag>Exchange Microsoft Mail PowerShell}}