Utiliser le pare-feu netsh advfirewall au lieu du pare-feu netsh pour contrôler le comportement du pare-feu Windows

Cet article explique comment utiliser le contexte de netsh advfirewall pare-feu au lieu du contexte pour contrôler le comportement du netsh firewall Pare-feu Windows.

Numéro de la base de connaissances d’origine : 947709

Résumé

Le netsh advfirewall contexte de ligne de commande du pare-feu est disponible dans Windows Server 2012 R2. Ce contexte fournit les fonctionnalités de contrôle du comportement du Pare-feu Windows fournies par le contexte de netsh firewall pare-feu.

Ce contexte fournit également des fonctionnalités pour un contrôle plus précis des règles de pare-feu. Ces règles incluent les paramètres par profil suivants :

  • Domain
  • Private
  • Public

Le netsh firewall contexte de ligne de commande peut être déconseillé dans une version ultérieure du système d’exploitation Windows. Nous vous recommandons d’utiliser le contexte de pare-feu pour contrôler le netsh advfirewall comportement du pare-feu.

Importante

Si vous êtes membre du groupe Administrateurs et que le contrôle de compte d’utilisateur est activé sur votre ordinateur, exécutez les commandes à partir d’une invite de commandes avec des autorisations élevées. Pour démarrer une invite de commandes avec des autorisations élevées, recherchez l’icône ou l’entrée de menu Démarrer que vous utilisez pour démarrer une session d’invite de commandes, cliquez dessus avec le bouton droit, puis cliquez sur Exécuter en tant qu’administrateur.

Quelques exemples de commandes fréquemment utilisées sont fournis dans les tableaux suivants. Vous pouvez utiliser ces exemples pour vous aider à migrer de l’ancien netsh firewall contexte vers le nouveau netsh advfirewall contexte de pare-feu.

En outre, les netsh advfirewall commandes que vous pouvez utiliser pour obtenir une aide détaillée en ligne sont fournies.

Exemple de commande 1 : Activer un programme

Ancienne commande Nouvelle commande
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 Exécutez les commandes suivantes :
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

Pour plus d’informations sur l’ajout de règles de pare-feu, exécutez la commande suivante :

netsh advfirewall firewall add rule ?

Exemple de commande 2 : Activer un port

Ancienne commande Nouvelle commande
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

Pour plus d’informations sur l’ajout de règles de pare-feu, exécutez la commande suivante :

netsh advfirewall firewall add rule ?

Exemple de commande 3 : Supprimer des programmes ou des ports activés

Ancienne commande Nouvelle commande
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

Pour plus d’informations sur la suppression des règles de pare-feu, exécutez la commande suivante :

netsh advfirewall firewall delete rule ?

Exemple de commande 4 : Configurer les paramètres ICMP

Ancienne commande Nouvelle commande
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

Pour plus d’informations sur la configuration des paramètres ICMP, exécutez la commande suivante :

netsh advfirewall firewall add rule ?

Exemple de commande 5 : Définir la journalisation

Ancienne commande Nouvelle commande
netsh firewall set logging %systemroot%\system32\LogFiles\Firewall\pfirewall.log 4096 ENABLE ENABLE Exécutez les commandes suivantes :
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

Pour plus d’informations, exécutez la commande suivante :

netsh advfirewall set currentprofile ?

Si vous souhaitez définir la journalisation pour un profil particulier, utilisez l’une des options suivantes à la place de l’option currentprofile :

  • Domainprofile
  • Privateprofile
  • Publicprofile

Exemple de commande 6 : Activer le pare-feu Windows

Ancienne commande Nouvelle commande
netsh firewall set opmode ENABLE netsh advfirewall set currentprofile state on
netsh firewall set opmode mode=ENABLE exceptions=enable Exécutez les commandes suivantes :
Netsh advfirewall set currentprofile state on
netsh advfirewall set currentprofile firewallpolicy blockinboundalways,allowoutbound
netsh firewall set opmode mode=enable exceptions=disable profile=domain Exécutez les commandes suivantes :
Netsh advfirewall set domainprofile state on
netsh advfirewall set domainprofile firewallpolicy blockinbound,allowoutbound
netsh firewall set opmode mode=enable profile=ALL Exécutez les commandes suivantes :
netsh advfirewall set domainprofile state on
netsh advfirewall set privateprofile state on

Pour plus d’informations, exécutez la commande suivante :

netsh advfirewall set currentprofile ?

Si vous souhaitez définir l’état du pare-feu pour un profil particulier, utilisez l’une des options suivantes au lieu de l’option currentprofile :

  • Domainprofile
  • Privateprofile
  • Publicprofile

Exemple de commande 7 : Paramètres par défaut de la stratégie de restauration

Ancienne commande Nouvelle commande
netsh firewall reset netsh advfirewall reset

Pour plus d’informations, exécutez la commande suivante :

netsh advfirewall reset ?

Exemple de commande 8 : Activer des services spécifiques

Ancienne commande Nouvelle commande
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 Exécutez les commandes suivantes :

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