У меня есть один сервер развертывания A, моя локальная машина B и сервер, к которому я обращаюсь C. Когда я запускаю тестовый скрипт из B -> C, он выполняется успешно. Когда я запускаю тот же скрипт из A -> C, он не работает, я могу пинговать его, но не могу запустить ничего другого.
Тестовый сценарий:
$credential2 = New-Object System.Management.Automation.PsCredential(("Test\ci"), (ConvertTo-SecureString "Password" -AsPlainText -Force))
Test-Connection -ComputerName C
invoke-command -computername C { get-UICulture } -Credential $credential2
Сообщение об ошибке:
[C] Connecting to remote server failed with the following error message : WinRM cannot process the request. The
following error occured while using Kerberos authentication: There are currently no logon servers available to service
the logon request.
Possible causes are:
-The user name or password specified are invalid.
-Kerberos is used when no authentication method and no user name are specified.
-Kerberos accepts domain user names, but not local user names.
-The Service Principal Name (SPN) for the remote computer name and port does not exist.
-The client and remote computers are in different domains and there is no trust between the two domains.
After checking for the above issues, try the following:
-Check the Event Viewer for events related to authentication.
-Change the authentication method; add the destination computer to the WinRM TrustedHosts configuration setting or us
e HTTPS transport.
Note that computers in the TrustedHosts list might not be authenticated.
-For more information about WinRM configuration, run the following command: winrm help config. For more information,
see the about_Remote_Troubleshooting Help topic.
+ CategoryInfo : OpenError: (:) [], PSRemotingTransportException
+ FullyQualifiedErrorId : PSSessionStateBroken
Заключительные замечания: - A, B находятся в одном домене, C - рабочая группа - Enable-PSRemoting (готово) - Modify Group Policy (готово) - Set-ExecutionPolicy (готово) - Firewall open (готово)
У меня заканчиваются идеи, есть какие-нибудь догадки или что-то, что я должен проверить? Спасибо за помощь заранее.
решение1
Похоже, что важной частью была проверка моих настроек политики. Сервер C (рабочая группа) был настроен на разрешение подключения таким серверам, как A, B в домене. В какой-то момент я установил сервер A с такими же настройками. Поскольку C находится в рабочей группе, A не доверял ему.
Исправление заключалось в удалении/обновлении настроек из A для учета этого сценария.