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

Подключение Powershell к Exchange 2013 PowerShell работает случайным образом?

В настоящее время я работаю над сценарием, который подключается к нашему почтовому серверу и очищает определенную папку в почтовом ящике, у меня все работает без проблем, кроме подключения к серверу. Когда я попробовал сегодня утром, все заработало без проблем. Но если я попробую сейчас, я получу

        The WinRM service cannot process the request because the request needs to be sent to a different machine. Use the redirect information to send the request to a new machine.  Redirect location reported: h
    ttps://mail.mailserver.se/owa/PowerShell . To automatically connect to the redirected URI, verify the "MaximumConnectionRedirectionCount" property of the session preference variable "PSSessionOption", and use the "AllowRedirection" p
    arameter on the cmdlet.
    At line:5 char:12
    + $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri ht ...

Когда я пытаюсь использовать https://mail.mailserver.se/Owa/PowerShell выплевывает:

New-PSSession : [mail.mailserver.se] Connecting to remote server mail.bluestep.se failed with the following error message : WinRM cannot process the request. The following error occurred while using Kerberos
 authentication: The computer mail.bluestep.se is unknown to Kerberos. Verify that the computer exists on the network, that the name provided is spelled correctly, and that the Kerberos configuration for a
ccessing the computer is correct. The most common Kerberos configuration issue is that an SPN with the format HTTP/mail.mailserver.se is not configured for the target. If Kerberos is not required, specify th
e Negotiate authentication mechanism and resubmit the operation. For more information, see the about_Remote_Troubleshooting Help topic.

Вот часть соединительной части кода.

$password = "MyPasswordHere"
$UserName = "domain\username"
$Credentials = New-Object System.Management.Automation.PSCredential("domain\username", $password)

    $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://Mailserver/PowerShell/ -Authentication Kerberos -Credential $Credentials

    Import-PSSession $Session -AllowClobber

Простите, если что-то упустил или непонятно.

Нашел решение

Если я добавлю «Enable-PSRemoting -Force», он будет работать. Похоже, WinRM не работает.

вы используете несколько серверов с балансировкой нагрузки?

кажется, что вы используете внешний uri для доступа к ps. Я еще не использовал общедоступные uri для доступа к ps. перенаправление с одного сервера на другой приведет к тому же URI, а липкий сеанс на балансировщике нагрузки снова перенаправит вас на сервер, который вернул перенаправление (что приведет к другому перенаправлению).

попробуйте использовать внутренний uri для доступа к оболочке. это может решить эту проблему.