Usare il firewall netsh advfirewall anziché il firewall netsh per controllare il comportamento di Windows Firewall

Questo articolo descrive come usare il contesto del netsh advfirewall firewall anziché il contesto per controllare il netsh firewall comportamento di Windows Firewall.

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

Riepilogo

Il netsh advfirewall contesto della riga di comando del firewall è disponibile in Windows Server 2012 R2. Questo contesto fornisce la funzionalità per controllare il comportamento di Windows Firewall fornito dal contesto del netsh firewall firewall.

Questo contesto offre anche funzionalità per un controllo più preciso delle regole del firewall. Queste regole includono le impostazioni seguenti per ogni profilo:

  • Dominio
  • Private
  • Pubblico

Il netsh firewall contesto della riga di comando potrebbe essere deprecato in una versione futura del sistema operativo Windows. È consigliabile usare il contesto del firewall per controllare il netsh advfirewall comportamento del firewall.

Importante

Se si è membri del gruppo Administrators e Controllo account utente è abilitato nel computer, eseguire i comandi da un prompt dei comandi con autorizzazioni elevate. Per avviare un prompt dei comandi con autorizzazioni elevate, trovare l'icona o la voce di menu Start usata per avviare una sessione del prompt dei comandi, fare clic con il pulsante destro del mouse su di esso e quindi scegliere Esegui come amministratore.

Nelle tabelle seguenti sono disponibili alcuni esempi di comandi usati di frequente. Questi esempi consentono di eseguire la migrazione dal contesto precedente netsh firewall al nuovo netsh advfirewall contesto del firewall.

Vengono inoltre forniti i netsh advfirewall comandi che è possibile usare per ottenere informazioni dettagliate sulla Guida inline.

Esempio di comando 1: Abilitare un programma

Comando precedente Nuovo comando
netsh firewall add allowedprogram C:\MyApp\MyApp.exe "My Application" ENABLE netsh advfirewall firewall add rule name="My Application" dir=in action=allow program="C:\MyApp\MyApp.exe" enable=yes
netsh firewall add allowedprogram program=C:\MyApp\MyApp.exe name="My Application" mode=ENABLE scope=CUSTOM addresses=157.60.0.1,172.16.0.0/16,LocalSubnet profile=Domain netsh advfirewall firewall add rule name="My Application" dir=in action=allow program= "C:\MyApp\MyApp.exe" enable=yes remoteip=157.60.0.1,172.16.0.0/16,LocalSubnet profile=domain
netsh firewall add allowedprogram program=C:\MyApp\MyApp.exe name="My Application" mode=ENABLE scope=CUSTOM addresses=157.60.0.1,172.16.0.0/16,LocalSubnet profile=ALL Eseguire i comandi seguenti:
netsh advfirewall firewall add rule name="My Application" dir=in action=allow program= "C:\MyApp\MyApp.exe" enable=yes remoteip=157.60.0.1,172.16.0.0/16,LocalSubnet profile=domain
netsh advfirewall firewall add rule name="My Application" dir=in action=allow program="C:\MyApp\MyApp.exe" enable=yes remoteip=157.60.0.1,172.16.0.0/16,LocalSubnet profile=private

Per altre informazioni su come aggiungere regole del firewall, eseguire il comando seguente:

netsh advfirewall firewall add rule ?

Esempio di comando 2: Abilitare una porta

Comando precedente Nuovo comando
netsh firewall add portopening TCP 80 "Open Port 80" netsh advfirewall firewall add rule name= "Open Port 80" dir=in action=allow protocol=TCP localport=80

Per altre informazioni su come aggiungere regole del firewall, eseguire il comando seguente:

netsh advfirewall firewall add rule ?

Esempio di comando 3: Eliminare le porte o i programmi abilitati

Comando precedente Nuovo comando
netsh firewall delete allowedprogram C:\MyApp\MyApp.exe netsh advfirewall firewall delete rule name= rule name program="C:\MyApp\MyApp.exe"
delete portopening protocol=UDP port=500 netsh advfirewall firewall delete rule name= rule name protocol=udp localport=500

Per altre informazioni su come eliminare le regole del firewall, eseguire il comando seguente:

netsh advfirewall firewall delete rule ?

Esempio di comando 4: Configurare le impostazioni ICMP

Comando precedente Nuovo comando
netsh firewall set icmpsetting 8 netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request" protocol=icmpv4:8,any dir=in action=allow
netsh firewall set icmpsetting type=ALL mode=enable netsh advfirewall firewall add rule name= "All ICMP V4" protocol=icmpv4:any,any dir=in action=allow
netsh firewall set icmpsetting 13 disable all netsh advfirewall firewall add rule name="Block Type 13 ICMP V4" protocol=icmpv4:13,any dir=in action=block

Per altre informazioni su come configurare le impostazioni ICMP, eseguire il comando seguente:

netsh advfirewall firewall add rule ?

Esempio di comando 5: Impostare la registrazione

Comando precedente Nuovo comando
netsh firewall set logging %systemroot%\system32\LogFiles\Firewall\pfirewall.log 4096 ENABLE ENABLE Eseguire i comandi seguenti:
netsh advfirewall set currentprofile logging filename %systemroot%\system32\LogFiles\Firewall\pfirewall.log
netsh advfirewall set currentprofile logging maxfilesize 4096
netsh advfirewall set currentprofile logging droppedconnections enable
netsh advfirewall set currentprofile logging allowedconnections enable

Per altre informazioni, eseguire il comando seguente:

netsh advfirewall set currentprofile ?

Se si vuole impostare la registrazione per un profilo specifico, usare una delle opzioni seguenti anziché l'opzione currentprofile :

  • Domainprofile
  • Privateprofile
  • Publicprofile

Esempio di comando 6: Abilitare Windows Firewall

Comando precedente Nuovo comando
netsh firewall set opmode ENABLE netsh advfirewall set currentprofile state on
netsh firewall set opmode mode=ENABLE exceptions=enable Eseguire i comandi seguenti:
Netsh advfirewall set currentprofile state on
netsh advfirewall set currentprofile firewallpolicy blockinboundalways,allowoutbound
netsh firewall set opmode mode=enable exceptions=disable profile=domain Eseguire i comandi seguenti:
Netsh advfirewall set domainprofile state on
netsh advfirewall set domainprofile firewallpolicy blockinbound,allowoutbound
netsh firewall set opmode mode=enable profile=ALL Eseguire i comandi seguenti:
netsh advfirewall set domainprofile state on
netsh advfirewall set privateprofile state on

Per altre informazioni, eseguire il comando seguente:

netsh advfirewall set currentprofile ?

Se si vuole impostare lo stato del firewall per un profilo specifico, usare una delle opzioni seguenti anziché l'opzione currentprofile :

  • Domainprofile
  • Privateprofile
  • Publicprofile

Esempio di comando 7: Ripristinare le impostazioni predefinite dei criteri

Comando precedente Nuovo comando
netsh firewall reset netsh advfirewall reset

Per altre informazioni, eseguire il comando seguente:

netsh advfirewall reset ?

Esempio di comando 8: Abilitare servizi specifici

Comando precedente Nuovo comando
netsh firewall set service FileAndPrint netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes
netsh firewall set service RemoteDesktop enable netsh advfirewall firewall set rule group="remote desktop" new enable=Yes
netsh firewall set service RemoteDesktop enable profile=ALL Eseguire i comandi seguenti:

netsh advfirewall firewall set rule group="remote desktop" new enable=Yes profile=domain

netsh advfirewall firewall set rule group="remote desktop" new enable=Yes profile=private