Puncte:0

Sesiune PSSession la distanță Powershell eșuată - Cont de administrator de domeniu - Eroare 0x80090322

drapel br

Rezolv o problemă pe care o am cu un senzor PRTG care nu colectează informații despre Windows Update de la unul dintre serverele noastre. Utilizează WinRM și o comandă PowerShell de la distanță pentru a face asta.

Server 1 - Issue Server

Server 2 - Server de lucru

Când încerc să folosesc Introduceți-PSSession -ComputerName Server1 sau winrs -r:Server1 dir pentru a testa conexiunea, primesc următoarele erori:

PS C:\WINDOWS\system32> winrs -r:Server1 dir


Eroare Winrs: WinRM nu poate procesa cererea. Următoarea eroare cu codul de eroare 0x80090322 a apărut în timpul utilizării autentificării Kerberos: A apărut o eroare de securitate necunoscută.
 Cauzele posibile sunt:
  -Numele de utilizator sau parola specificate sunt nevalide.
  -Kerberos este utilizat atunci când nu sunt specificate nicio metodă de autentificare și nici un nume de utilizator.
  -Kerberos acceptă nume de utilizator de domeniu, dar nu nume de utilizator locale.
  -Numele principal al serviciului (SPN) pentru numele computerului la distanță și portul nu există.
  -Clientul și computerele de la distanță sunt în domenii diferite și nu există încredere între cele două domenii.
 După ce ați verificat problemele de mai sus, încercați următoarele:
  -Verificați Event Viewer pentru evenimente legate de autentificare.
  -Schimbarea metodei de autentificare; adăugați computerul de destinație la setarea de configurare WinRM TrustedHosts sau utilizați transportul HTTPS.
 Rețineți că este posibil ca computerele din lista TrustedHosts să nu fie autentificate.
   -Pentru mai multe informații despre configurarea WinRM, rulați următoarea comandă: winrm help config.

PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server1
Enter-PSSession: Conectarea la serverul la distanță Server1 a eșuat cu următorul mesaj de eroare: WinRM nu poate procesa cererea. The
următoarea eroare cu codul de eroare 0x80090322 a apărut în timpul utilizării autentificării Kerberos: a apărut o eroare de securitate necunoscută.
 Cauzele posibile sunt:
  -Numele de utilizator sau parola specificate sunt nevalide.
  -Kerberos este utilizat atunci când nu sunt specificate nicio metodă de autentificare și nici un nume de utilizator.
  -Kerberos acceptă nume de utilizator de domeniu, dar nu nume de utilizator locale.
  -Numele principal al serviciului (SPN) pentru numele computerului la distanță și portul nu există.
  -Clientul și computerele de la distanță sunt în domenii diferite și nu există încredere între cele două domenii.
 După ce ați verificat problemele de mai sus, încercați următoarele:
  -Verificați Event Viewer pentru evenimente legate de autentificare.
  -Schimbarea metodei de autentificare; adăugați computerul de destinație la setarea de configurare WinRM TrustedHosts sau utilizați transportul HTTPS.
 Rețineți că este posibil ca computerele din lista TrustedHosts să nu fie autentificate.
   -Pentru mai multe informații despre configurarea WinRM, rulați următoarea comandă: winrm help config. Pentru mai multe informații, consultați
about_Remote_Troubleshooting Subiect de ajutor.
La linia:1 char:1
+ Enter-PSSession -ComputerName Server1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo: InvalidArgument: (Server1:String) [Enter-PSSession], PSRemotingTransportException
    + FullyQualifiedErrorId: CreateRemoteRunspaceFailed

Dacă rulez comanda pe oricare dintre celelalte servere ale noastre, conexiunea are succes, acesta este singurul care îmi dă probleme.

Dacă rulez comanda Enter-PSSession cu -Acreditare comuta cu contul meu de utilizator primesc aceeași eroare, dar dacă rulez comanda și specific contul de administrator local al serverului se va conecta. Alte servere funcționează bine.

PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server1 -Credential Server1\administrator
[Server1]: PS C:\Users\Administrator\Documents> ieșire

PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server1 -domeniu de acreditări\myuser
Enter-PSSession: Conectarea la serverul la distanță Server1 a eșuat cu următorul mesaj de eroare: WinRM nu poate procesa cererea. The
Următoarea eroare cu codul de eroare 0x80090322 a apărut în timpul utilizării autentificării negociați: a apărut o eroare de securitate necunoscută.
 Cauzele posibile sunt:
  -Numele de utilizator sau parola specificate sunt nevalide.
  -Kerberos este utilizat atunci când nu sunt specificate nicio metodă de autentificare și nici un nume de utilizator.
  -Kerberos acceptă nume de utilizator de domeniu, dar nu nume de utilizator locale.
  -Numele principal al serviciului (SPN) pentru numele computerului la distanță și portul nu există.
  -Clientul și computerele de la distanță sunt în domenii diferite și nu există încredere între cele două domenii.
 După ce ați verificat problemele de mai sus, încercați următoarele:
  -Verificați Event Viewer pentru evenimente legate de autentificare.
  -Schimbarea metodei de autentificare; adăugați computerul de destinație la setarea de configurare WinRM TrustedHosts sau utilizați transportul HTTPS.
 Rețineți că este posibil ca computerele din lista TrustedHosts să nu fie autentificate.
   -Pentru mai multe informații despre configurarea WinRM, rulați următoarea comandă: winrm help config. Pentru mai multe informații, consultați
about_Remote_Troubleshooting Subiect de ajutor.
La linia:1 char: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> ieșire
PS C:\WINDOWS\system32>

Dacă fug Noua-PSSession de la serverul local voi primi aceeași eroare, cu excepția cazului în care specific -EnableNetworkAccess comuta si apoi se va conecta. Asta mă încurcă.Vizualizatorul de evenimente îmi oferă ID de eveniment 161 legat de autentificarea utilizatorului și eroarea 142 pentru sesiunea care nu a putut fi creată.

Dacă fug Test-WSMan de la serverul local și o gazdă de la distanță arată că rulează.

Iată configurația WinRM și configurația ascultătorului:

PS C:\Windows\system32> winrm obține winrm/config
Config
    MaxEnvelopeSizekb = 500
    MaxTimeoutms = 60000
    MaxBatchItems = 32000
    MaxProviderRequests = 4294967295
    Client
        NetworkDelayms = 5000
        URLPrefix = wsman
        AllowUnencrypted = fals
        Auth
            De bază = adevărat
            Digest = adevărat
            Kerberos = adevărat
            Negociază = adevărat
            Certificat = adevărat
            CredSSP = fals
        Porturi implicite
            HTTP = 5985
            HTTPS = 5986
        TrustedHosts = 10.10.10.142
    Serviciu
        RootSDDL = O:NSG:BAD:P(A;;GA;;;BA)(A;;GR;;;IU)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW; ;;WD)
        MaxConcurrentOperations = 4294967295
        MaxConcurrentOperationsPerUser = 1500
        EnumerationTimeoutms = 240000
        MaxConnexions = 300
        MaxPacketRetrievalTimeSeconds = 120
        AllowUnencrypted = fals
        Auth
            De bază = fals
            Kerberos = adevărat
            Negociază = adevărat
            Certificat = fals
            CredSSP = fals
            CbtHardeningLevel = Relaxat
        Porturi implicite
            HTTP = 5985
            HTTPS = 5986
        IPv4Filter = *
        IPv6Filter = *
        EnableCompatibilityHttpListener = false
        EnableCompatibilityHttpsListener = false
        Amprenta certificată
        AllowRemoteAccess = adevărat
    Câștigători
        AllowRemoteShellAccess = adevărat
        IdleTimeout = 7200000
        MaxConcurrentUsers = 2147483647
        MaxShellRunTime = 2147483647
        MaxProcessesPerShell = 2147483647
        MaxMemoryPerShellMB = 2147483647
        MaxShelsPerUser = 2147483647

PS C:\Windows\system32> winrm enumera winrm/config/listener
Ascultător
    Adresa = *
    Transport = HTTP
    Port = 5985
    Nume gazdă
    Activat = adevărat
    URLPrefix = wsman
    Amprenta certificată
    ListeningOn = 10.10.10.87, 127.0.0.1, ::1, fe80::4579:db85:c9cb:ead0%6

Alte lucruri pe care le-am incercat:

  • Nu am setări GPO pentru WinRM.
  • Am șters și recreat ascultătorul.
  • Am resetat de mai multe ori configurația WinRM.
  • Windows Advanced Firewall este dezactivat pentru Public, Private și Domain retelelor.
  • Am verificat Set-PSSessionConfiguration -Nume Microsoft.PowerShell -ShowSecurityDescriptorUI permisiunile și privilegiile par în regulă.
  • Am folosit adrese IP în loc de nume de gazdă cu aceleași rezultate.
  • Mi-am adăugat computerul la lista de gazde de încredere și nu muncă. Acest lucru nu ar trebui să fie necesar, deoarece ambele computere sunt pe acelasi domeniu.
  • A fugit Enable-PSRemoting -Force (Deși acest lucru ar trebui să fie inutil deoarece WinRM este activat implicit pentru Server 2012 și înainte).
  • Mi-am adăugat utilizatorul la Administratorii locali și la distanță Administrarea utilizatorilor pe server fără noroc.
  • Am ajustat registrul de REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 iar asta nu functioneaza indiferent de valoarea sa.
  • Am repornit și am rulat un sfc /scannow ca un ultim efort de șanț.

Specificații ale serverului, stației de lucru și utilizatorului meu:

  • Contul meu de domeniu este un administrator de domeniu.
  • Serverul este Windows Server 2019 Standard.
  • Stația de lucru este Windows 10 Pro.
  • PowerShell versiunea 5 pentru ambele.
  • Ambele computere sunt pe același domeniu.
  • Ambele computere sunt la zi.

Aș putea folosi contul de administrator local pentru a sonda aceste informații și pentru a remedia problema mea de intimidare, dar asta nu rezolvă problema de bază.

De pe serverul de la distanță nu există intrări de eroare în jurnalul Windows Remote Management, dar pe computerul meu am acestea:

ID eveniment de eroare - 142

Operațiunea WSMan Enumerarea a eșuat, cod de eroare 2150858909

ID eveniment de eroare - 49

Operațiunea protocolului WinRM a eșuat din cauza următoarei erori: WinRM nu poate procesa cererea. Următoarea eroare cu codul de eroare 0x80090322 a apărut în timpul utilizării autentificării Kerberos: A apărut o eroare de securitate necunoscută.  
 Cauzele posibile sunt:
  -Numele de utilizator sau parola specificate sunt nevalide.
  -Kerberos este utilizat atunci când nu sunt specificate nicio metodă de autentificare și nici un nume de utilizator.
  -Kerberos acceptă nume de utilizator de domeniu, dar nu nume de utilizator locale.
  -Numele principal al serviciului (SPN) pentru numele computerului la distanță și portul nu există.
  -Clientul și computerele de la distanță sunt în domenii diferite și nu există încredere între cele două domenii.
 După ce ați verificat problemele de mai sus, încercați următoarele:
  -Verificați Event Viewer pentru evenimente legate de autentificare.
  -Schimbarea metodei de autentificare; adăugați computerul de destinație la setarea de configurare WinRM TrustedHosts sau utilizați transportul HTTPS.
 Rețineți că este posibil ca computerele din lista TrustedHosts să nu fie autentificate.
   -Pentru mai multe informații despre configurarea WinRM, rulați următoarea comandă: winrm help config..

ID eveniment de eroare - 161

WinRM nu poate procesa cererea. Următoarea eroare cu codul de eroare 0x80090322 a apărut în timpul utilizării autentificării Kerberos: A apărut o eroare de securitate necunoscută.  
 Cauzele posibile sunt:
  -Numele de utilizator sau parola specificate sunt nevalide.
  -Kerberos este utilizat atunci când nu sunt specificate nicio metodă de autentificare și nici un nume de utilizator.
  -Kerberos acceptă nume de utilizator de domeniu, dar nu nume de utilizator locale.
  -Numele principal al serviciului (SPN) pentru numele computerului la distanță și portul nu există.
  -Clientul și computerele de la distanță sunt în domenii diferite și nu există încredere între cele două domenii.
 După ce ați verificat problemele de mai sus, încercați următoarele:
  -Verificați Event Viewer pentru evenimente legate de autentificare.
  -Schimbarea metodei de autentificare; adăugați computerul de destinație la setarea de configurare WinRM TrustedHosts sau utilizați transportul HTTPS.
 Rețineți că este posibil ca computerele din lista TrustedHosts să nu fie autentificate.
   -Pentru mai multe informații despre configurarea WinRM, rulați următoarea comandă: winrm help config.

Pot RDP în server foarte bine, așa am făcut unele dintre testele locale.

Am testat aceste două comenzi:

gwmi win32_operatingsystem -ComputerName Server1 se execută normal, fără nicio problemă, adică specificând serverul la distanță și RDPing să ruleze local.

Get-CimInstance win32_operatingsystem -ComputerName Server1 Nu pot rula de pe stația mea de lucru, dar dacă am RDP pe server și îl rulez, se va executa normal.

Ieșirea de SetSPN -X nu returnează SPN-uri suprapuse

Ieșirea de SetSPN -L se intoarce:

ServicePrincipalNames înregistrat pentru CN=Server1,OU=Servere,OU=Organization,DC=Organization,DC=LOCAL:
        TERMSRV/Server1.DOMAIN.LOCAL
        WSMAN/Server1.DOMAIN.LOCAL
        RestrictedKrbHost/Server1.DOMAIN.LOCAL
        HOST/Server1.DOMAIN.LOCAL
        TERMSRV/Server1
        WSMAN/Server1
        RestrictedKrbHost/Server1
        HOST/Server1

Toate sugestiile sunt foarte apreciate.

Puncte:0
drapel br

I got it resolved.

It was an SPN issue. The HTTP/Server1 and HTTP/Server1.domain were being used by a random user account named after the server.

After disabling the account and moving the SPN's to the computer object WinRM is now working like its supposed to.

This got me in the right direction.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.