Usar el firewall de netsh advfirewall en lugar del firewall de netsh para controlar el comportamiento del Firewall de Windows
En este artículo se describe cómo usar el netsh advfirewall
contexto de firewall en lugar del contexto para controlar el netsh firewall
comportamiento del Firewall de Windows.
Número de KB original: 947709
Resumen
El netsh advfirewall
contexto de la línea de comandos del firewall está disponible en Windows Server 2012 R2. Este contexto proporciona la funcionalidad para controlar el comportamiento del Firewall de Windows proporcionado por el contexto del netsh firewall
firewall.
Este contexto también proporciona funcionalidad para un control más preciso de las reglas de firewall. Estas reglas incluyen la siguiente configuración por perfil:
- Dominio
- Private
- Public
Es posible que el netsh firewall
contexto de la línea de comandos esté en desuso en una versión futura del sistema operativo Windows. Se recomienda usar el contexto del firewall para controlar el netsh advfirewall
comportamiento del firewall.
Importante
Si es miembro del grupo Administradores y el control de cuentas de usuario está habilitado en el equipo, ejecute los comandos desde un símbolo del sistema con permisos elevados. Para iniciar un símbolo del sistema con permisos elevados, busque el icono o menú Inicio entrada que use para iniciar una sesión del símbolo del sistema, haga clic con el botón derecho en él y, a continuación, haga clic en Ejecutar como administrador.
En las tablas siguientes se proporcionan algunos ejemplos de comandos usados con frecuencia. Puede usar estos ejemplos para ayudarle a migrar del contexto anterior netsh firewall
al nuevo netsh advfirewall
contexto de firewall.
Además, se proporcionan los netsh advfirewall
comandos que puede usar para obtener ayuda insertada detallada.
Ejemplo de comando 1: Habilitar un programa
Comando anterior | Nuevo 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 |
Ejecute los comandos siguientes: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 |
Para obtener más información sobre cómo agregar reglas de firewall, ejecute el siguiente comando:
netsh advfirewall firewall add rule ?
Ejemplo de comando 2: Habilitar un puerto
Comando anterior | Nuevo 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 |
Para obtener más información sobre cómo agregar reglas de firewall, ejecute el siguiente comando:
netsh advfirewall firewall add rule ?
Ejemplo de comando 3: Eliminación de programas o puertos habilitados
Comando anterior | Nuevo 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 |
Para obtener más información sobre cómo eliminar reglas de firewall, ejecute el siguiente comando:
netsh advfirewall firewall delete rule ?
Ejemplo de comando 4: Configuración de las opciones de ICMP
Comando anterior | Nuevo 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 |
Para obtener más información sobre cómo configurar las opciones de ICMP, ejecute el siguiente comando:
netsh advfirewall firewall add rule ?
Ejemplo de comando 5: Establecimiento del registro
Comando anterior | Nuevo comando |
---|---|
netsh firewall set logging %systemroot%\system32\LogFiles\Firewall\pfirewall.log 4096 ENABLE ENABLE |
Ejecute los comandos siguientes: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 |
Para obtener más información, ejecute el siguiente comando:
netsh advfirewall set currentprofile ?
Si desea establecer el registro para un perfil determinado, use una de las siguientes opciones en lugar de la currentprofile
opción :
Domainprofile
Privateprofile
Publicprofile
Ejemplo de comando 6: Habilitar firewall de Windows
Comando anterior | Nuevo comando |
---|---|
netsh firewall set opmode ENABLE |
netsh advfirewall set currentprofile state on |
netsh firewall set opmode mode=ENABLE exceptions=enable |
Ejecute los comandos siguientes:Netsh advfirewall set currentprofile state on netsh advfirewall set currentprofile firewallpolicy blockinboundalways,allowoutbound |
netsh firewall set opmode mode=enable exceptions=disable profile=domain |
Ejecute los comandos siguientes:Netsh advfirewall set domainprofile state on netsh advfirewall set domainprofile firewallpolicy blockinbound,allowoutbound |
netsh firewall set opmode mode=enable profile=ALL |
Ejecute los comandos siguientes:netsh advfirewall set domainprofile state on netsh advfirewall set privateprofile state on |
Para obtener más información, ejecute el siguiente comando:
netsh advfirewall set currentprofile ?
Si desea establecer el estado del firewall para un perfil determinado, use una de las siguientes opciones en lugar de la currentprofile
opción :
Domainprofile
Privateprofile
Publicprofile
Ejemplo de comando 7: Restaurar valores predeterminados de directiva
Comando anterior | Nuevo comando |
---|---|
netsh firewall reset |
netsh advfirewall reset |
Para obtener más información, ejecute el siguiente comando:
netsh advfirewall reset ?
Ejemplo de comando 8: Habilitar servicios específicos
Comando anterior | Nuevo 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 |
Ejecute los comandos siguientes: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 |