Я устраняю проблему, связанную с тем, что датчик PRTG не собирает информацию Центра обновления Windows с одного из наших серверов. Для этого используется WinRM и удаленная команда PowerShell.
Сервер 1 — сервер выдачи
Сервер 2 - Рабочий сервер
Когда я пытаюсь использовать Enter-PSSession -ComputerName Server1
или же winrs -r: каталог Server1
чтобы проверить соединение, я продолжаю получать следующие ошибки:
PS C:\WINDOWS\system32> winrs -r:Server1 каталог
Ошибка Winrs: WinRM не может обработать запрос. При использовании проверки подлинности Kerberos произошла следующая ошибка с кодом ошибки 0x80090322: Произошла неизвестная ошибка безопасности.
Возможные причины:
-Указанное имя пользователя или пароль недействительны.
-Kerberos используется, когда не указаны ни метод аутентификации, ни имя пользователя.
-Kerberos принимает имена пользователей домена, но не локальные имена пользователей.
-Имя участника-службы (SPN) для имени и порта удаленного компьютера не существует.
-Клиент и удаленные компьютеры находятся в разных доменах, и между двумя доменами нет доверия.
После проверки вышеуказанных проблем попробуйте следующее:
- Проверьте средство просмотра событий на наличие событий, связанных с аутентификацией.
-Изменить метод аутентификации; добавьте конечный компьютер в параметр конфигурации WinRM TrustedHosts или используйте транспорт HTTPS.
Обратите внимание, что компьютеры в списке TrustedHosts могут не пройти проверку подлинности.
-Для получения дополнительных сведений о конфигурации WinRM выполните следующую команду: winrm help config.
PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server1
Enter-PSSession: Не удалось подключиться к удаленному серверу Server1 со следующим сообщением об ошибке: WinRM не может обработать запрос.
При использовании проверки подлинности Kerberos произошла следующая ошибка с кодом ошибки 0x80090322: Произошла неизвестная ошибка безопасности.
Возможные причины:
-Указанное имя пользователя или пароль недействительны.
-Kerberos используется, когда не указаны ни метод аутентификации, ни имя пользователя.
-Kerberos принимает имена пользователей домена, но не локальные имена пользователей.
-Имя участника-службы (SPN) для имени и порта удаленного компьютера не существует.
-Клиент и удаленные компьютеры находятся в разных доменах, и между двумя доменами нет доверия.
После проверки вышеуказанных проблем попробуйте следующее:
- Проверьте средство просмотра событий на наличие событий, связанных с аутентификацией.
-Изменить метод аутентификации; добавьте конечный компьютер в параметр конфигурации WinRM TrustedHosts или используйте транспорт HTTPS.
Обратите внимание, что компьютеры в списке TrustedHosts могут не пройти проверку подлинности.
-Для получения дополнительных сведений о конфигурации WinRM выполните следующую команду: winrm help config. Для получения дополнительной информации см.
раздел справки about_Remote_Troubleshooting.
В строке:1 символ:1
+ Enter-PSSession -ComputerName Server1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo: InvalidArgument: (Server1:String) [Enter-PSSession], PSRemotingTransportException
+ FullyQualifiedErrorId : CreateRemoteRunspaceFailed
Если я запускаю команду на любом из наших других серверов, соединение устанавливается успешно, это единственный сервер, который вызывает у меня проблемы.
Если я запускаю команду Enter-PSSession
с -Учетные данные
переключаться с моей учетной записью пользователя, я получаю ту же ошибку, но если я запускаю команду и указываю учетную запись локального администратора сервера, он будет подключаться. Другие сервера работают нормально.
PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server1 -Credential Server1\administrator
[Server1]: PS C:\Users\Administrator\Documents> выйти
PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server1 -credential domain\myuser
Enter-PSSession: Не удалось подключиться к удаленному серверу Server1 со следующим сообщением об ошибке: WinRM не может обработать запрос.
При использовании проверки подлинности Negotiate произошла следующая ошибка с кодом ошибки 0x80090322: произошла неизвестная ошибка безопасности.
Возможные причины:
-Указанное имя пользователя или пароль недействительны.
-Kerberos используется, когда не указаны ни метод аутентификации, ни имя пользователя.
-Kerberos принимает имена пользователей домена, но не локальные имена пользователей.
-Имя участника-службы (SPN) для имени и порта удаленного компьютера не существует.
-Клиент и удаленные компьютеры находятся в разных доменах, и между двумя доменами нет доверия.
После проверки вышеуказанных проблем попробуйте следующее:
- Проверьте средство просмотра событий на наличие событий, связанных с аутентификацией.
-Изменить метод аутентификации; добавьте конечный компьютер в параметр конфигурации WinRM TrustedHosts или используйте транспорт HTTPS.
Обратите внимание, что компьютеры в списке TrustedHosts могут не пройти проверку подлинности.
-Для получения дополнительных сведений о конфигурации WinRM выполните следующую команду: winrm help config. Для получения дополнительной информации см.
раздел справки about_Remote_Troubleshooting.
В строке:1 символ:1
+ Enter-PSSession -ComputerName Server1 -credential alpenaw2k.local\kemp ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo: InvalidArgument: (Server1:String) [Enter-PSSession], PSRemotingTransportException
+ FullyQualifiedErrorId : CreateRemoteRunspaceFailed
PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server2
[Server2]: PS C:\Users\user\Documents> выйти
PS C:\WINDOWS\system32>
Если я побегу New-PSSession
с локального сервера я получу ту же ошибку, если не укажу -EnableNetworkAccess
переключатель, а затем он будет подключаться. Это меня смущает.Средство просмотра событий дает мне идентификатор события 161, связанный с аутентификацией пользователя, и ошибку 142 из-за невозможности создания сеанса.
Если я побегу Тест-WSMan
с локального сервера и удаленного хоста он показывает, что он работает.
Вот конфигурация WinRM и конфигурация прослушивателя:
PS C:\Windows\system32> winrm получить winrm/config
Конфигурация
MaxEnvelopeSizekb = 500
Максимальное время ожидания = 60000
Максбатчитемс = 32000
Макспровидеррекуестс = 4294967295
Клиент
NetworkDelayms = 5000
Префикс URL=wsman
Разрешить незашифрованное = ложь
Авторизация
Базовый = правда
Дайджест = правда
Керберос = правда
Переговоры = правда
Сертификат = правда
CredSSP = ложь
Порты по умолчанию
HTTP = 5985
HTTPS = 5986
Трастедхостс = 10.10.10.142
Оказание услуг
RootSDDL = O:NSG:BAD:P(A;;GA;;;BA)(A;;GR;;;IU)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW; ;;ВД)
Максконкуррентоператионс = 4294967295
MaxConcurrentOperationsPerUser = 1500
EnumerationTimeoutms = 240000
Максимальное количество подключений = 300
MaxPacketRetrievalTimeSeconds = 120
Разрешить незашифрованное = ложь
Авторизация
Базовый = ложь
Керберос = правда
Переговоры = правда
Сертификат = ложь
CredSSP = ложь
CbtHardeningLevel = расслабленный
Порты по умолчанию
HTTP = 5985
HTTPS = 5986
IPv4Фильтр = *
IPv6Фильтр = *
EnableCompatibilityHttpListener = ложь
EnableCompatibilityHttpsListener = false
Отпечаток сертификата
Алловудалеакцесс = истина
Победители
Алловремотешеллакцесс = истина
Время простоя = 7200000
МаксКонкуррентусерс = 2147483647
Максшеллрантиме = 2147483647
Макспроцессеспершелл = 2147483647
Максмеморипершеллмб = 2147483647
Максшеллсперусер = 2147483647
PS C:\Windows\system32> winrm перечислить winrm/config/listener
Слушатель
Адрес = *
Транспорт = HTTP
Порт = 5985
Имя хоста
Включено = правда
Префикс URL=wsman
Отпечаток сертификата
ListeningOn = 10.10.10.87, 127.0.0.1, ::1, fe80::4579:db85:c9cb:ead0%6
Другие вещи, которые я пробовал:
- У меня нет настроек GPO для WinRM.
- Я удалил и воссоздал слушателя.
- Я несколько раз сбрасывал конфиг WinRM.
- Расширенный брандмауэр Windows отключен для общедоступного, частного и доменного
сети.
- я проверил
Set-PSSessionConfiguration -Name Microsoft.PowerShell -ShowSecurityDescriptorUI
разрешения и
привилегии кажутся нормальными.
- Я использовал IP-адреса вместо имен хостов с тем же
Результаты.
- Я добавил свой компьютер в список доверенных хостов, но он не
работай. В этом нет необходимости, так как оба компьютера
находятся в одном домене.
- Ран
Включить-PSRemoting-Force
(Хотя это должно быть ненужным
поскольку WinRM включен по умолчанию для Server 2012 и более поздних версий).
- Я добавил своего пользователя в локальные администраторы и удаленные
Управление пользователями на сервере не везет.
- Я поправил реестр
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1
и это не
работать независимо от его стоимости.
- Я перезагрузился и запустил
sfc/scannow
как последнее усилие.
Спецификации сервера, рабочей станции и моего пользователя:
- Моя учетная запись домена является администратором домена.
- Сервер — Windows Server 2019 Standard.
- Рабочая станция — Windows 10 Pro.
- PowerShell версии 5 для обоих.
- Оба компьютера находятся в одном домене.
- Оба компьютера обновлены.
Я мог бы использовать учетную запись локального администратора для опроса этой информации и решения моей проблемы с запугиванием, но это не устраняет основную проблему.
С удаленного сервера в журнале удаленного управления Windows нет записей об ошибках, но на моем компьютере они есть:
Идентификатор события ошибки — 142
Ошибка перечисления операции WSMan, код ошибки 2150858909
Идентификатор события ошибки — 49
Не удалось выполнить операцию протокола WinRM из-за следующей ошибки: WinRM не может обработать запрос. При использовании проверки подлинности Kerberos произошла следующая ошибка с кодом ошибки 0x80090322: Произошла неизвестная ошибка безопасности.
Возможные причины:
-Указанное имя пользователя или пароль недействительны.
-Kerberos используется, когда не указаны ни метод аутентификации, ни имя пользователя.
-Kerberos принимает имена пользователей домена, но не локальные имена пользователей.
-Имя участника-службы (SPN) для имени и порта удаленного компьютера не существует.
-Клиент и удаленные компьютеры находятся в разных доменах, и между двумя доменами нет доверия.
После проверки вышеуказанных проблем попробуйте следующее:
- Проверьте средство просмотра событий на наличие событий, связанных с аутентификацией.
-Изменить метод аутентификации; добавьте конечный компьютер в параметр конфигурации WinRM TrustedHosts или используйте транспорт HTTPS.
Обратите внимание, что компьютеры в списке TrustedHosts могут не пройти проверку подлинности.
-Для получения дополнительной информации о конфигурации WinRM выполните следующую команду: winrm help config..
Идентификатор события ошибки — 161
WinRM не может обработать запрос. При использовании проверки подлинности Kerberos произошла следующая ошибка с кодом ошибки 0x80090322: Произошла неизвестная ошибка безопасности.
Возможные причины:
-Указанное имя пользователя или пароль недействительны.
-Kerberos используется, когда не указаны ни метод аутентификации, ни имя пользователя.
-Kerberos принимает имена пользователей домена, но не локальные имена пользователей.
-Имя участника-службы (SPN) для имени и порта удаленного компьютера не существует.
-Клиент и удаленные компьютеры находятся в разных доменах, и между двумя доменами нет доверия.
После проверки вышеуказанных проблем попробуйте следующее:
- Проверьте средство просмотра событий на наличие событий, связанных с аутентификацией.
-Изменить метод аутентификации; добавьте конечный компьютер в параметр конфигурации WinRM TrustedHosts или используйте транспорт HTTPS.
Обратите внимание, что компьютеры в списке TrustedHosts могут не пройти проверку подлинности.
-Для получения дополнительных сведений о конфигурации WinRM выполните следующую команду: winrm help config.
Я могу просто подключиться к серверу по RDP, именно так я проводил некоторые локальные тесты.
Я протестировал эти две команды:
gwmi win32_operatingsystem - имя_компьютера Server1
выполняется нормально без проблем, это указывает на удаленный сервер и RDP для локального запуска.
Get-CimInstance win32_operatingsystem -ComputerName Server1
Я не могу работать со своей рабочей станции, но если я подключаюсь к серверу по протоколу RDP и запускаю его, он будет выполняться нормально.
Результат SetSPN-X
не возвращает перекрывающихся имен участников-служб
Результат SetSPN -L
возвращает:
Зарегистрированные ServicePrincipalNames для CN=Server1,OU=Servers,OU=Organization,DC=Organization,DC=LOCAL:
УСЛОВИЯ RV/Server1.DOMAIN.LOCAL
WSMAN/Server1.DOMAIN.LOCAL
RestrictedKrbHost/Server1.DOMAIN.LOCAL
HOST/Server1.DOMAIN.LOCAL
TERMSRV/Сервер1
WSMAN/Сервер1
RestrictedKrbHost/Server1
ХОСТ/Сервер1
Любые и все предложения очень ценятся.