Http <-> Il deadlock della crittografia causa un errore di avvio lento e di avvio del servizio su SSL abilitato

Questo articolo fornisce una soluzione alternativa per un problema che causa l'avvio lento e l'avvio dei servizi.

Si applica a: Windows Server 2012 R2
Numero KB originale: 2004121

Sintomi

Possono verificarsi i sintomi seguenti:

  • Windows Server si blocca dopo l'avvio in Applicazione di impostazioni computer o Applicazione di criteri di sicurezza.
  • Al termine dell'avvio del server, un utente che tenta di accedere potrebbe bloccarsi in Applicazione delle impostazioni utente.
  • È possibile notare che i servizi impostati su Tipo di avvio "Automatico" potrebbero non essere avviati.

Alcuni servizi impostati su "Automatico" possono iniziare senza problemi, ad esempio:

  • Utilità di avvio dei processi Dcom
  • Chiamata di procedura remota
  • Registro eventi
  • client Criteri di gruppo
  • Plug and Play
  • DHCP Client
  • Client DNS
  • Pianificazione
  • Motore di filtro di base
  • Servizio workstation
  • Netlogon

Altri servizi impostati su "Automatico" potrebbero non riuscire, ad esempio:

  • Spooler di stampa
  • Servizi terminal
  • Servizio Server
  • Registro remoto
  • WMI
  • Distributed Transaction Coordinator
  • Tutti i servizi correlati alle applicazioni

Se si tenta di avviare manualmente i servizi con un tipo di avvio "Automatico", potrebbe verificarsi un errore 1053 che indica che "Il servizio non ha risposto tempestivamente alla richiesta di avvio o controllo".

Causa

I problemi descritti nella sezione sintomi si verificano a causa di un blocco nel database di Service Control Manager (SCM). Come risultato del blocco, nessuno dei servizi può accedere al database SCM per inizializzare le richieste di avvio del servizio. Per verificare che un computer Windows sia interessato dal problema descritto in questo articolo, eseguire il sc querylock comando dal prompt dei comandi.

L'output seguente indica che il database SCM è bloccato:

QueryServiceLockstatus - Operazione riuscita
IsLocked: True
LockOwner: .\NT Service Control Manager
LockDuration: 1090 (secondi dall'acquisizione)
Non sono presenti informazioni aggiuntive nei log eventi oltre a quelle di Gestione controllo servizi che indicano il timeout delle richieste di avvio del servizio. La causa radice sottostante è un deadlock tra Gestione controllo servizi e HTTP.SYS.

Risoluzione

Per risolvere questo problema, è possibile modificare il comportamento di HTTP.SYS in modo che dipenda dall'avvio di un altro servizio. A tale scopo, eseguire la procedura seguente:

  1. Aprire l'Editor del Registro di sistema.
  2. Passare a HKLM\SYSTEM\CurrentControlSet\Services\HTTP e creare il valore multistringa seguente: DependOnService.
  3. Fare doppio clic sulla nuova voce DependOnService .
  4. Digitare CRYPTSVC nel campo Dati valore e fare clic su OK.
  5. Riavviare il server.

Nota

Assicurarsi di eseguire un backup del Registro di sistema o delle chiavi interessate prima di apportare modifiche al sistema.

Ulteriori informazioni

A partire da Windows Server 2008, Windows non attende l'avvio di tutti i servizi automatici per caricare Explorer.exe. I servizi possono essere impostati su Avvio automatico ritardato per migliorare le prestazioni di avvio.