[HOW-TO] Windows Server | Habilitar y Deshabilitar Windows Firewall en Windows Server 2012 con PowerShell
Siguiendo con la muestra de posibilidades que nos da PowerShell en Windows Server (2012 y versiones anteriores también), hoy vamos a mostrar cómo habilitar y deshabilitar Windows Firewall a través de CMDLets.
Normalmente los administradores pueden utilizar interfaz gráfica para habilitar y deshabilitar Windows Firewall. PowerShell nos da la posibilidad de hacer esta tarea mucho más rápido y con un nivel de automatización importante.
Por supuesto que en un ambiente de Active Directory Domain Services podemos utilizar Group Policy Objects para habilitar o deshabilitar Windows Firewall sobre los equipos, no obstante si no contamos con un ambiente de AD DS o si queremos realizarlo de otra manera, tenemos esta chance.
En este How-To, entonces, veremos cómo realizar la habilitación y deshabilitación de Windows Firewall a través de PowerShell.
[toc]
Introducción
Objetivo
Esta publicación tiene como objetivo:
- Mostrar cómo realizar la deshabilitación de todos los perfiles de Windows Firewall a través de PowerShell.
- Mostrar cómo realizar la habilitación de todos los perfiles de Windows Firewall a través de PowerShell.
Audiencia
Este documento está dirigido a Consultores, Profesionales IT y personas que desarrollan tareas de Consultoría, Administración y Soporte o que simplemente están interesados en aprender nuevas cosas.
Comentarios y Corrección de Errores
Hemos realizado nuestro mejor esfuerzo para no cometer errores, pero al fin y al cabo somos seres humanos. Si deseás reportar algún error o darnos feedback de qué te pareció esta publicación, por favor no dejes de comunicarte con nosotros a través de correo electrónico a la siguiente dirección: info@tectimes.net.
Alcance
Entender cuál es el alcance de la publicación nos ayuda a tener una expectativa real de lo que encontraremos en la misma, de modo tal que quién lo lee no espere ni más ni menos de lo que encontrará. Vamos a describir la bitácora, el escenario de trabajo, tecnologías alcanzadas y el objetivo técnico.
Objetivo Técnico
El Objetivo Técnico de esta publicación es la siguienite:
- Trabajaremos sobre Windows Firewall de Windows Server 2012.
- Trabajaremos con los CMDLets “Get-NetFirewallProfile” y “Set-NetFirewallProfile” de PowerShell.
Tecnologías Alcanzadas
Las tecnologías alcanzadas por esta publicación son las siguientes:
- Windows Server 2012 y Windows 8.
- Windows Server 2012 R2 y Windows 8.1.
Cualquier versión posterior debe chequearse la compatibilidad.
Escenario de Trabajo
Para llevar a cabo esta demostración contamos con:
- Windows Server 2012 con últimos updates.
- Windows PowerShell habilitado.
Plan de Trabajo
El Plan de Trabajo a realizar será el siguiente:
- Deshabilitación masiva de estado de Firewall en todos los perfiles de Windows Firewall por PowerShell.
- Chequeo de estado de perfiles de Windows Firewall a través de PowerShell.
- Habilitación masiva de estado de Firewall en todos los perfiles de Windows Firewall por PowerShell.
Desarrollo
Vamos a verificar cómo habilitar, deshabilitar y verificar el estado de Windows Firewall en los perfiles del mismo, en base al plan de trabajo propuesto.
Deshabilitación masiva de estado de Firewall en todos los perfiles de Windows Firewall por PowerShell
Para poder realizar la deshabilitación masiva del estado de Windows Firewall en todos los perfiles de esta herramienta, debemos ejecutar el siguiente comando:
Get-NetFirewallProfile | Set-NetFirewallProfile -Enabled False
La salida del CMDLet será la siguiente:
Como podemos observar, este script utiliza dos CMDLets de Windows PowerShell:
- Get-NetFirewallProfile: es aque que lista los perfiles existentes de Windows Firewall en el equipo.
- Set-NetFirewallProfile: permite establecer, a través de parámetros, distintos estados de Windows Firewall para sus perfiles.
Mediante el primer CMDLet listamos todos los perfiles, y mediante el segundo (en la misma línea) deshabilitamos masivamente cada uno de ellos.
Chequeo de estado de perfiles de Windows Firewall a través de PowerShell
Para ver el estado de Windows Firewall para cada uno de los perfiles, podemos utilizar el siguiente CMDLet:
Get-NetFirewallProfile
La salida será la siguiente:
Por supuesto, podemos hacer cambio a modo tabla, agregándole al final el “| ft°:
Get-NetFirewallProfile | ft
Habilitación masiva de estado de Firewall en todos los perfiles de Windows Firewall por PowerShell
Para poder realizar la habilitación masiva del estado de Windows Firewall en todos los perfiles de esta herramienta, debemos ejecutar el siguiente comando:
Get-NetFirewallProfile | Set-NetFirewallProfile -Enabled True
La salida del CMDLet será la siguiente:
Conclusiones
Windows PowerShell nos permite realizar tareas mucho más rápidamente que por interfaz gráfica. En Windows Server 2012 contamos con muchas novedades y nuevos CMDLets, los entre los cuales encontramos los hoy vistos en esta publicación.
Existen muchos otros CMDLets de Windows PowerShell que nos pueden ayudar a acelerar aquellas pequeñas tareas cotidianas, y muchas otras posibilidades que se pueden aprovechar con estos dos CMDLets vistos hoy. ¡No dejes de visitar las referencias y links para conocer más!
Referencias y Links
- Get-NetFirewallProfile: http://technet.microsoft.com/en-us/library/jj573830.aspx
- Set-NetFirewallProfile: http://technet.microsoft.com/en-us/library/jj554896.aspx