Вступление

Я сижу за сервером Windows Server 2012 R2 и пытаюсь Enter-PSSession в другую машину.

Я выполнил Enable-PSRemoting на удаленном компьютере, и это не помогло.

Детали компьютера

Локальный компьютер

  • ОС: Windows Server 2012 R2
  • IP 10.1.1.1/24
  • HOSTNAME.exe: сервер
  • ECHO %USERNAME%: User1
  • ECHO %USERDOMAIN%: пример
  • WHOAMI.exe: пример \ пользователь1
  • Домен в "control.exe system": example.test
  • Полное имя компьютера в "control.exe system": server.example.test
  • $PSVersionTable.PSVersion | FT -H: 5 0 10586 117

Удаленный компьютер

  • ОС: Windows 7 Enterprise
  • IP 10.1.1.2/24
  • HOSTNAME.exe: рабочая станция
  • ECHO %USERNAME%: администратор
  • ECHO %USERDOMAIN%: рабочая станция
  • WHOAMI.exe: рабочая станция \ Администратор
  • Домен в "control.exe system": example.test
  • Полное имя компьютера в "control.exe system": workstation.example.test
  • $PSVersionTable.PSVersion | FT -H: 2 0 -1 -1

Что я пробовал

Попытки 1-6 из server.example.test:

PS C:\Users\User1> Enter-PSSession -ComputerName workstation.example.test -credential Administrator
PS C:\Users\User1> Enter-PSSession -ComputerName workstation.example.test -credential example\Administrator
PS C:\Users\User1> Enter-PSSession -ComputerName workstation.example.test -credential example.test\Administrator
PS C:\Users\User1> Enter-PSSession -ComputerName workstation.example.test -credential User1
PS C:\Users\User1> Enter-PSSession -ComputerName workstation.example.test -credential example\User1
PS C:\Users\User1> Enter-PSSession -ComputerName workstation.example.test -credential example.test\User1

Все они получают одинаковый вывод:

Enter-PSSession : Connecting to remote server workstation.example.test failed with the following error message : The user name or password is incorrect. For more information, see the about_Remote_Troubleshooting Help topic.
At line:1 char:1
+ Enter-PSSession -ComputerName workstation.example.test -credential Admin ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (workstation.example.test:String) [Enter-PSSession], PSRemotingTransportException
    + FullyQualifiedErrorId : CreateRemoteRunspaceFailed

Это не имеет смысла, потому что я точно знаю, что пароль правильный.

Попытки 7-8 из server.example.test

PS C:\Users\User1> Enter-PSSession -ComputerName workstation.example.test -credential workstation\Administrator
PS C:\Users\User1> Enter-PSSession -ComputerName workstation.example.test -credential workstation\User1

Они оба получают этот вывод:

Enter-PSSession : Connecting to remote server workstation.example.test failed with the following error message : WinRM cannot process the request. The following error with errorcode 0x80090311 occurred 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 use 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.
At line:1 char:1
+ Enter-PSSession -ComputerName workstation.example.test -credential works ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (workstation.example.test:String) [Enter-PSSession], PSRemotingTransportException
    + FullyQualifiedErrorId : CreateRemoteRunspaceFailed

Кто-нибудь знает, почему это не работает?

1 ответ1

0

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

На server.example.test откройте PowerShell от имени администратора и введите одну из следующих команд:

  1. Set-Item -Path WSMan:\localhost\Client\TrustedHosts -Value *
  2. Set-Item -Path WSMan:\localhost\Client\TrustedHosts -Value *.example.test
  3. Set-Item -Path WSMan:\localhost\Client\TrustedHosts -Value workstation.example.test

Первый позволит вашему локальному компьютеру подключиться к любому удаленному компьютеру.

Второй разрешит удаленный доступ к любому компьютеру в домене example.test.

Третий разрешит удаленный доступ только workstation.example.test.

Я думаю, что синтаксис для добавления нескольких записей это просто строка значений, разделенных запятыми, которая будет выглядеть примерно так:

Set-Item -Path WSMan:\localhost\Client\TrustedHosts -Value "192.168.0.1,192.168.0.2"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .