Имеется парк компьютеров Windows 10, объединённых в домен при помощи Active Directory. Контроллер домена крутится на Windows Server 2012 R2. Для администрирования рабочих станций иногда приходится подключаться к ним, открывая сеанс командной строки. Для этого я на контроллере домена запускаю утилиту PsExec с ключом -s и командой "cmd". Но у этой схемы есть проблемы с кириллицей, поэтому нужно разобраться с удалённой сессией PowerShell.
Сейчас я нормально подключаюсь к тестовой машине с учётной записью администратора домена:
PS C:\Users\DomainAdmin> Enter-PSSession -ComputerName test.mydomain.local
[test]: PS C:\Users\DomainAdmin\Documents> whoami
mydomain\DomainAdmin
Но это никуда не годится с точки зрения безопасности, поэтому пробуем использовать учётку локального администратора рабочей станции:
PS C:\Users\DomainAdmin> Enter-PSSession -ComputerName test.mydomain.local -Credential "test.mydomain.local\admin"
Enter-PSSession : Сбой подключения к удаленному серверу test.mydomain.local. Сообщение об ошибке: WinRM не удается обработать запрос. При использовании проверки подлинн
ости Kerberos возникла следующая ошибка с кодом ошибки 0x80090311: Отсутствуют серверы, которые могли бы обработать запрос на вход в сеть.
Возможные причины:
- Указаны неверные имя пользователя или пароль.
- Используется проверка подлинности Kerberos без указания способа проверки подлинности и имени пользователя.
- Kerberos принимает имена пользователей домена, но не принимает имена локальных пользователей.
- Имя субъекта-службы (SPN) для имени и порта удаленного компьютера не существует.
- Клиентский и удаленный компьютеры находятся в разных доменах, между которыми отсутствует доверительное отношение.
После проверки указанных выше проблем попробуйте выполнить следующее:
- Просмотрите в средстве "Просмотр событий" события, относящиеся к проверке подлинности.
- Измените способ проверки подлинности, добавьте конечный компьютер в конфигурацию TrustedHosts для WinRM либо воспользуйтесь транспортом HTTPS.
Помните о том, что компьютеры в списке TrustedHosts могут не проходить проверку подлинности.
- Для получения дополнительных сведений о конфигурации WinRM выполните следующую команду: winrm help config. Подробности см. в разделе справки "about_Remote_Troublesh
ooting".
строка:1 знак:1
+ Enter-PSSession -ComputerName test.mydomain.local -Credential "test.mydomain.l ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (test.mydomain.local:String) [Enter-PSSession], PSRemotingTransportException
+ FullyQualifiedErrorId : CreateRemoteRunspaceFailed
Чтобы устранить ошибку 0x80090311, добавляем рабочую станцию в список доверенных хостов:
PS C:\Users\DomainAdmin> Set-Item -Path WSMan:\localhost\Client\TrustedHosts -Value 'test.mydomain.local'
И пытаемся снова, но получаем другую ошибку:
PS C:\Users\DomainAdmin> Enter-PSSession -ComputerName test.mydomain.local -Credential "test.mydomain.local\admin"
Enter-PSSession : Сбой подключения к удаленному серверу test.mydomain.local. Сообщение об ошибке: Отказано в доступе. Подробности см. в разделе справки "about_Remote_Tr
oubleshooting".
строка:1 знак:1
+ Enter-PSSession -ComputerName test.mydomain.local -Credential "test.mydomain.l ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (test.mydomain.local:String) [Enter-PSSession], PSRemotingTransportException
+ FullyQualifiedErrorId : CreateRemoteRunspaceFailed
Как решить проблему, коллеги, подскажите?