The commande here allow to show all the rules,
netsh advfirewall firewall show rule dir=in name=all
I would like to filter
I read the documentation and i could see that for example, the optional option [dir=in|out]
is not documented.
How can it be achieved? Where a documentation about undocumented possibilities
I may use VB script or Powershell 2.0 if required.
These are the only two undocumented options I know of:
dir (direction) - in or out
status - enabled or disabled
We can build a netsh query that gets close and is just missing the port part:
netsh advfirewall firewall show rule status=enabled name=all
We can look for the port requirement using powershell's select-string (disclaimer that I'm not good at regex so there might be a better one, but this seems to work)
select-string -pattern "(LocalPort.*445)|(LocalPort.*Any)" -context 9,4
The select-string matches anything that is specific to rule 445, and also rules that apply to any port. The context argument will display the rest of the rule for us (otherwise we'll just get the LocalPort line)
The final command ends up being
netsh advfirewall firewall show rule status=enabled name=all | select-string -pattern "(LocalPort.*445)|(LocalPort.*Any)" -context 9,4
This works for me, let me know if it gives you any issues or you want something else.