Condividi tramite


netsh http

Il netsh http comando consente di configurare e gestire le impostazioni HTTP per il servizio HTTP in Windows. Questo servizio gestisce il traffico HTTP per le applicazioni e i componenti di sistema, consentendo di controllare aspetti quali i certificati SSL, gli elenchi di ascolto IP, i parametri della cache e i timeout. Utilizzare questo comando per ottimizzare il comportamento HTTP, migliorare la sicurezza e risolvere i problemi di rete relativi al traffico HTTP.

Syntax

netsh http [add | delete | dump | flush | help | show | update | ?]
netsh http add cacheparam [type=](cacherangechunksize|maxcacheresponsesize)
                          [value=]<ulong>

netsh http add iplisten [ipaddress=]<IP address>

netsh http add setting [settingtype=]sslthrottle
                       [value=]<ulong>

netsh http add timeout [timeouttype=]idleconnectiontimeout|headerwaittimeout
                       [value=]<u-short>
netsh http add sslcert [hostnameport=<name:port> | ipport=<ipaddr:port> | ccs=<port>] | json=[filepath]
                       [appid=<GUID>] [certhash=<string>] [certstorename=<string>] [verifyclientcertrevocation=enable|disable]
                       [verifyrevocationwithcachedclientcertonly=enable|disable] [usagecheck=enable|disable]
                       [revocationfreshnesstime=<u-int>] [urlretrievaltimeout=<u-int>] [sslctlidentifier=<string>]
                       [sslctlstorename=<string>] [dsmapperusage=enable|disable] [clientcertnegotiation=enable|disable]
                       [reject=enable|disable] [disablehttp2=enable|disable] [disablequic=enable|disable]
                       [disablelegacytls=enable|disable] [disabletls12=enable|disable] [disabletls13=enable|disable]
                       [disableocspstapling=enable|disable] [enabletokenbinding=enable|disable] [logextendedevents=enable|disable]
                       [enablesessionticket=enable|disable] [disablesessionid=enable|disable]
netsh http add urlacl [url=]<string> [user=]<string> [listen=]yes|no [delegate=]yes|no [sddl=]<string>
netsh http delete cache [url=<string>] [recursive=yes|no]
netsh http delete iplisten [ipaddress=<IP address>]
netsh http delete setting [settingtype=]sslthrottle
netsh http delete sslcert ipport=<ipaddr:port> | hostnameport=<name:port> | ccs=<port>
netsh http delete timeout [timeouttype=](idleconnectiontimeout|headerwaittimeout)
netsh http delete urlacl [url=]<string>
netsh http dump
netsh http flush logbuffer
netsh http show <cacheparam> <iplisten> <setting> <timeout>
netsh http show cachestate [url=<string>]
netsh http show servicestate [view=session|requestq|client] [verbose=yes|no]
netsh http show sslcert [ipport=<ipaddr:port> | hostnameport=<name:port> | ccs=<port> | scopedccs=<name:port>] [json=enable]
netsh http show urlacl [url=<string>]
netsh http update sslcert [hostnameport=<name:port> | ipport=<ipaddr:port> | ccs=<port>] | json=[filepath]
                          [appid=<GUID>] [certhash=<string>] [certstorename=<string>] [verifyclientcertrevocation=enable|disable]
                          [verifyrevocationwithcachedclientcertonly=enable|disable] [usagecheck=enable|disable]
                          [revocationfreshnesstime=<u-int>] [urlretrievaltimeout=<u-int>] [sslctlidentifier=<string>]
                          [sslctlstorename=<string>] [dsmapperusage=enable|disable] [clientcertnegotiation=enable|disable]
                          [reject=enable|disable] [disablehttp2=enable|disable] [disablequic=enable|disable]
                          [disablelegacytls=enable|disable] [disabletls12=enable|disable] [disabletls13=enable|disable]
                          [disableocspstapling=enable|disable] [enabletokenbinding=enable|disable] [logextendedevents=enable|disable]
                          [enablesessionticket=enable|disable] [disablesessionid=enable|disable]
netsh http show update sslpropertyex [hostnameport=<name:port> | ipport=<ipaddr:port> | ccs=<port>] |
                                     [propertyid=0 receivewindow=<bytes>] [propertyid=1 maxsettingsperframe=<value> maxsettingsperminute=<value>]

Parameters

Command Description
http (in inglese) add cacheparam Configura e aggiunge parametri specifici alla cache del servizio HTTP.

type - Specifica il tipo di parametro da configurare. Le opzioni sono cacherangechunksize e maxcacheresponsesize.

value - Indica il valore del parametro, misurato in byte. Se si utilizza una rappresentazione esadecimale, anteporre al valore 0xil prefisso .
http (in inglese) add iplisten Aggiunge un nuovo indirizzo IP all'elenco di ascolto IP per il servizio HTTP. Questo elenco specifica gli indirizzi IP a cui viene associato il servizio HTTP, esclusi i numeri di porta. L'indirizzo '0.0.0.0' rappresenta tutti gli indirizzi IPv4, mentre '::' rappresenta tutti gli indirizzi IPv6. Il formato utilizza ipaddress=IP_Address.
http (in inglese) add setting Aggiunge un'impostazione di configurazione globale al servizio HTTP.

settingtype=sslthrottle - Specifica il limite di limitazione per le connessioni SSL.

value - Richiede un valore intero non negativo (ULONG) per impostare il livello di limitazione desiderato.
http (in inglese) add sslcert Aggiunge l'associazione del certificato SSL per un indirizzo IP o un nome host e una porta specificati, insieme ai criteri del certificato client corrispondenti, per gestire in modo sicuro le connessioni HTTPS per il servizio HTTP.

Per informazioni dettagliate sulla descrizione dei parametri, vedere Osservazioni .
http (in inglese) add timeout Definisce un'impostazione di timeout globale per il servizio HTTP.

timeouttype= Le opzioni includono:
  • idleconnectiontimeout - Specifica la durata massima per la quale una connessione inattiva può essere mantenuta prima di essere chiusa.
  • headerwaittimeout - Definisce il tempo massimo di attesa per la ricezione del set completo di intestazioni HTTP.

  • Il value parametro richiede un numero intero non negativo (u-short) che rappresenta la durata del timeout in secondi.
    http (in inglese) add urlacl Consente agli utenti e agli account non amministratori di registrare l'URL. Le autorizzazioni di accesso possono essere definite specificando un nome account NT insieme ai listen parametri e delegate oppure utilizzando una stringa SDDL (Security Descriptor Definition Language) per l'elenco DACL (Discretionary Access Control List).

    url= - Specifica l'URL completo che si desidera associare all'elenco di controllo di accesso (ACL). Questo deve includere il protocollo (ad esempio, http:// o https://), il dominio e tutti i segmenti di porta o percorso necessari.
    user= - Identifica il nome dell'utente o del gruppo di utenti a cui è concesso l'accesso. Può essere nel formato di un singolo nome utente, di un gruppo di utenti o di un'entità di sicurezza.
    listen - Determina se l'utente specificato dispone dell'autorizzazione per registrare l'URL. Options include:
  • yes - Concede all'utente l'autorizzazione per registrare l'URL specificato (impostazione predefinita).
  • no - Impedisce all'utente di registrare l'URL specificato.
  • delegate - Determina se l'utente specificato dispone dell'autorizzazione per delegare l'URL. Options include:
  • yes - Consente all'utente di delegare la gestione degli URL ad altri utenti.
  • no - Impedisce all'utente di delegare la gestione degli URL ad altri (impostazione predefinita).
  • sddl - La stringa SDDL che fornisce una descrizione dettagliata dell'elenco di controllo di accesso discrezionale (DACL) associato all'ACL URL, specificando le autorizzazioni e i diritti di accesso per utenti e gruppi.
    http (in inglese) delete cache Cancella l'intera cache URI o rimuove voci specifiche in base all'URI specificato.

    url= - Specifica la voce URL nella cache HTTP che si desidera eliminare.

    recursive - Accetta un valore di yes o no. Se impostato su yes, rimuove non solo la voce URL specificata, ma anche tutte le voci sotto tale URL, cancellando in modo efficace la cache per l'URL specificato e tutti gli URL secondari o le risorse associate. Se impostato su no, solo l'URL specificato viene rimosso dalla cache senza influire sulle voci secondarie.
    http (in inglese) delete iplisten Rimuove un indirizzo IP dall'elenco di ascolto IP.

    ipaddress= - Specifica l'indirizzo IP che si desidera rimuovere dall'elenco dei listener HTTP.
    http (in inglese) delete setting Rimuove un'impostazione di configurazione globale, causando il ripristino del comportamento predefinito del servizio HTTP per quel particolare parametro.

    settingtype=sslthrottle - Rimuove l'impostazione di limitazione SSL.
    http (in inglese) delete timeout Rimuove un'impostazione di timeout globale, ripristinando il comportamento di timeout del servizio HTTP ai valori predefiniti.

  • timeouttype=idleconnectiontimeout - Specifica che si desidera rimuovere l'impostazione per il timeout della connessione inattiva. Il timeout della connessione inattiva definisce per quanto tempo una connessione TCP inattiva (inattiva) deve essere mantenuta aperta prima che venga chiusa. La rimozione di questa impostazione ripristina lo stato predefinito di qualsiasi valore di timeout di inattività personalizzato.
  • timeouttype=headerwaittimeout - Specifica che si desidera rimuovere l'impostazione per il timeout di attesa dell'intestazione. Il timeout di attesa dell'intestazione determina il tempo di attesa del server per la ricezione di un'intestazione di richiesta HTTP prima del timeout. La rimozione di questa impostazione ripristina lo stato predefinito di qualsiasi valore di timeout di attesa dell'intestazione personalizzata.
  • http (in inglese) delete urlacl Elimina un URL riservato, liberando l'URL specificato dall'uso esclusivo da parte del servizio HTTP.

    url= - Specifica la prenotazione URL che si desidera eliminare.
    http (in inglese) dump Crea uno script contenente la configurazione del contesto corrente. Lo script può essere salvato in un file e utilizzato per ripristinare le impostazioni se vengono modificate o devono essere replicate su un altro sistema.
    http (in inglese) flush logbuffer Cancella i buffer interni per i file di registro.
    http (in inglese) showcacheparam | iplisten | setting | timeout
  • Visualizza i parametri della cache del servizio HTTP misurati in byte (cacheparam).
  • Elenca tutti gli indirizzi IP attualmente inclusi nell'elenco di ascolto IP (iplisten).
  • Visualizza le impostazioni di configurazione correnti del servizio HTTP in secondi (setting).
  • Visualizza i valori di timeout impostati per il servizio HTTP in secondi (timeout).
  • http (in inglese) show cachestate Enumera tutte le risorse e le relative proprietà archiviate nella cache delle risposte HTTP oppure fornisce informazioni dettagliate su una risorsa specifica e sulle relative proprietà associate.

    url= - Specifica un URL specifico per il quale si desidera visualizzare lo stato della cache.
    http (in inglese) show servicestate Visualizza uno snapshot corrente del servizio HTTP.

    view= - Specifica l'aspetto dello stato del servizio HTTP che si desidera visualizzare. È possibile scegliere una delle seguenti opzioni:
  • session - Visualizza le informazioni sulle sessioni attive, inclusi i dettagli della connessione e della sessione.
  • requestq - Mostra lo stato della coda delle richieste, fornendo informazioni dettagliate sul numero di richieste elaborate e accodate.
  • client - Fornisce informazioni sulle connessioni client, ad esempio il numero di client connessi e i dettagli della connessione.

  • verbose= - Determina il livello di dettaglio incluso nell'output.
  • yes - Fornisce informazioni dettagliate, offrendo una visione più completa dello stato del servizio selezionato.
  • no - Presenta un riepilogo con meno dettagli, utile per una rapida panoramica dello stato del servizio.
  • http (in inglese) show sslcert Elenca le associazioni di certificati server SSL insieme ai criteri di certificato client associati. Se non viene fornita alcuna associazione specifica, vengono visualizzate tutte le associazioni disponibili.

    scopedccs=name:port - Specifica una voce dell'archivio certificati centrale (CCS) con ambito fornendo un nome host e una porta. Analogamente al hostnameport parametro, concentra l'output sui certificati correlati a una specifica configurazione CCS con ambito.

    I sottoparametri disponibili sono:
  • ipport=ipaddr:port
  • hostnameport=name:port
  • ccs=port
  • json=enable

    Per informazioni dettagliate sulla descrizione dei parametri, vedere Osservazioni .
  • http (in inglese) show urlacl Visualizza gli elenchi DACL per un URL riservato specificato o per tutti gli URL riservati, offrendo informazioni dettagliate sulle relative autorizzazioni di accesso.

    url= - Specifica la prenotazione URL di cui si desidera visualizzare i dettagli.
    http (in inglese) update sslcert Aggiorna l'associazione di un certificato del server SSL esistente e i criteri del certificato client associati per un indirizzo IP o un nome host e una porta specificati.

    Per informazioni dettagliate sulla descrizione dei parametri, vedere Osservazioni .
    http (in inglese) update sslpropertyex Modifica i parametri di un'associazione di certificato server SSL esistente e i relativi criteri di certificato client correlati per un determinato indirizzo IP o nome host e porta.

  • propertyid=0 receivewindow=<bytes> - Aggiorna le dimensioni della finestra di ricezione per le connessioni SSL. propertyid=0 Identifica questa proprietà specifica e receivewindow=<bytes> imposta le dimensioni della finestra di ricezione in byte.
  • propertyid=1 maxsettingsperframe=<value> maxsettingsperminute=<value> - Aggiorna le impostazioni HTTP/2 relative alle connessioni SSL. Qui, propertyid=1 specifica questa particolare proprietà, mentre maxsettingsperframe=<value> imposta il numero massimo di fotogrammi di impostazioni consentiti per fotogramma e maxsettingsperminute=<value> imposta il numero massimo di fotogrammi di impostazioni consentiti al minuto.

  • Altri sottoparametri disponibili sono:
  • hostnameport=name:port
  • ipport=ipaddr:port
  • ccs=port

  • Per informazioni dettagliate sulla descrizione dei parametri, vedere Osservazioni .
    help o? Visualizza un elenco di comandi e le relative descrizioni nel contesto corrente.

    Remarks

    • hostnameport=name:port: specifica l'associazione utilizzando un nome host e un numero di porta. Questa opzione associa il certificato SSL a un nome host specifico (ad esempio www.example.com) su una porta specificata (in genere la porta 443 per HTTPS).

    • ipport=ipaddr:port: specifica l'associazione utilizzando un indirizzo IP e un numero di porta. In questo modo il certificato SSL viene associato a un indirizzo IP specifico (ad esempio 192.168.1.1) e a una porta.

    • ccs=port: fa riferimento a una porta CCS (Central Certificate Store). In questo contesto, CCS consente la gestione centralizzata dei certificati SSL su più server, utilizzando una porta specifica per i binding SSL.

    • json=filepath: utilizza un file JSON per configurare l'associazione SSL. Questa opzione consente di specificare impostazioni di configurazione complesse o in blocco in formato JSON che il servizio HTTP può analizzare e applicare.

    • appid=GUID: identificatore univoco (GUID) per l'applicazione associata all'associazione al certificato.

    • certhash=<string>: hash del certificato (spesso rappresentato come identificazione personale) del certificato SSL da associare.

    • certstorename=<string>: il nome dell'archivio certificati in cui si trova il certificato SSL (ad esempio, MY per l'archivio personale).

    • verifyclientcertrevocation=: abilita o disabilita la verifica dello stato di revoca del certificato client. Le opzioni sono enable o disable.

    • verifyrevocationwithcachedclientcertonly=: determina se per il controllo delle revoche vengono utilizzati solo i certificati client memorizzati nella cache. Le opzioni sono enable o disable.

    • usagecheck=: controlla i criteri di utilizzo dei certificati. Le opzioni sono enable o disable. L'impostazione predefinita è abilitata.

    • revocationfreshnesstime=: imposta il tempo di aggiornamento per i dati di revoca in secondi. Se il valore è impostato su 0, il nuovo CRL viene aggiornato solo se il precedente scade.

    • urlretrievaltimeout=: definisce il timeout per il recupero degli URL di revoca in millisecondi.

    • sslctlidentifier=<string>: l'identificatore per l'elenco di certificati attendibili (CTL) SSL da utilizzare.

    • sslctlstorename=<string>: specifica il nome dell'archivio certificati nell'hive del LOCAL_MACHINE Registro di sistema in cui è archiviato il CTL SSL.

    • dsmapperusage=: abilita o disabilita l'uso di Active Directory DSMapper per la mappatura dei certificati client. Le opzioni sono enable o disable.

    • clientcertnegotiation=: controlla la negoziazione dei certificati client durante l'handshake SSL. Le opzioni sono enable o disable. L'impostazione predefinita è disabilitata.

    • reject=: specifica il rifiuto delle connessioni SSL in base a determinati criteri. Le opzioni sono enable o disable.

    • disablehttp2=: Abilita o disabilita il supporto del protocollo HTTP/2. Le opzioni sono enable o disable.

    • disablequic=: Abilita o disabilita il supporto del protocollo QUIC. Le opzioni sono enable o disable.

    • disablelegacytls=: abilita o disabilita l'uso dei protocolli TLS legacy. Le opzioni sono enable o disable.

    • disabletls12= | disabletls13=: abilita o disabilita versioni specifiche del protocollo TLS (TLS 1.2 o TLS 1.3). Le opzioni sono enable o disable.

    • disableocspstapling=: abilita o disabilita l'associazione OCSP, utilizzata per controllare lo stato di revoca del certificato. Le opzioni sono enable o disable.

    • enabletokenbinding=: abilita o disabilita l'associazione di token per una maggiore sicurezza. Le opzioni sono enable o disable.

    • logextendedevents=: abilita o disabilita la registrazione degli eventi estesi a scopo diagnostico. Le opzioni sono enable o disable.

    • enablesessionticket=: controlla se i ticket di sessione SSL sono abilitati per la ripresa della sessione. Le opzioni sono enable o disable.

    • disablesessionid=: controlla se gli ID di sessione SSL sono disabilitati per la ripresa della sessione. Le opzioni sono enable o disable.

    Examples

    Per riservare l'URL http://example.com:8080/ all'utente DOMAIN\UserName con autorizzazioni di ascolto abilitate, eseguire il comando seguente:

    netsh http add urlacl url=http://example.com:8080/ user=DOMAIN\UserName listen=yes
    

    Per rimuovere un indirizzo IP specifico dall'elenco di indirizzi su HTTP.sys in ascolto, eseguire il comando seguente:

    netsh http delete iplisten ipaddress=192.168.1.100
    

    Per visualizzare lo stato della cache per un URL specifico, eseguire il comando seguente:

    netsh http show cachestate url=http://example.com
    

    Per rimuovere una prenotazione URL, eseguire il comando seguente:

    netsh http delete urlacl url=http://+:80/MyApp
    

    Per visualizzare i dettagli relativi a una prenotazione URL specifica, eseguire il comando seguente:

    netsh http show urlacl url=http://+:80/MyApp
    

    Per visualizzare i dettagli del certificato SSL per un IP e una porta specifici, eseguire il comando seguente:

    netsh http show sslcert ipport=192.168.1.100:443
    

    Per aggiornare le impostazioni HTTP/2 relative alle connessioni SSL su un IP e una porta specifici, consentendo 100 frame al 1000 minuto, eseguire il seguente comando:

    netsh http update sslpropertyex ipport=192.168.1.100:443 propertyid=1 maxsettingsperframe=100 maxsettingsperminute=1000
    

    See also