Назад | Перейти на главную страницу

Почему я не могу использовать команду Powershell Send-MailMessage с заданного сервера?

Я пытаюсь использовать следующую команду (без разрыва строки) для ретрансляции электронной почты через сервер Exchange 2013 с другого сервера. Сервер-отправитель указан с явным разрешением на ретрансляцию анонимной электронной почты и той же командой, которая работала несколько месяцев назад.

Send-MailMessage -To [valid email group] -From [throwaway address]
-Subject "Test Only" -SmtpServer [valid URI to server] -body "Testing"

Результат команды - ничего не происходит. Ни ошибок, ни электронной почты, ничего. Я не администратор Exchange, и он говорит, что мы установили обновления и тому подобное, но мы не можем связать одно обновление или сеанс с этой ошибкой. Какие-нибудь советы по устранению неполадок? Спасибо.

Да, пусть администратор биржи проверит журналы SMTP на сервере (ах) CAS. Просмотр журналов - это всегда первое, что нужно сделать.

К вашему сведению - send-mailmessage будет использовать ваши собственные учетные данные AD, если вы их не укажете, поэтому вы можете столкнуться с проблемой, когда соединитель приема только разрешение анонимных подключений, но вы используете сеанс с аутентификацией. Просто предположение.

/ Edit Файлы журнала будут найдены либо в том месте, где вы их определили (найдите его, используя Get-TransportServer |select name, ReceiveProtocolLogPath ) или через get-messagetracking. Предполагая, что для соединителей приема включено ведение журнала, что вам и следует сделать.

Вы пытаетесь заставить удаленный сервер делать что-то от вашего имени. Хотя mfinni прав, что это может быть проблема с SMTP, вы могли попасть в Двойной прыжок вопрос.

По сути, второй сервер получает «менее мощный» токен аутентификации, который не позволяет ему иметь полные права человека, прошедшего прямую аутентификацию (мера безопасности, используемая для предотвращения распространения вредоносных проблем).

Для устранения неполадок установите $VerbosePreference по умолчанию ("SilentlyContinue") просто "продолжить".