@websec007
2023-02-20T00:38:17.000000Z
字数 1766
阅读 311
防火墙
netsh 是 Windows下命令行管理工具之一,主要面向网络层面的命令行管理,可以理解为 net shell,即网络层面的shell接口;通过netsh我们可以实现对windows的网络层进行命令行基本的管理控制;Windows防火墙同样可以通过netsh实现命令行基本的管控。
通过 "netsh ?"帮助,我们可以看到Windows操作系统下有2个防火墙对象,1个是高级防护墙(advfiewall,defender防火墙),1个简单防火墙(firewall)。
> netsh ? //通过netsh 帮助我们可以看到windows下有2个防火墙
advfirewall
firewall
# 进入 advfirewall 高级防火墙
netsh advfirewall //这里的高级防火墙,即defender 防火墙
# 进入 firewall 简单防火墙
netsh firewall // 简单防火墙
netsh advfirewall set allprofiles state on
netsh adv set all state off
// 设置防火墙全局进出规则
netsh advfirewall set allprofiles firewallpolicy blockinbound,allowoutbound
netsh advfirewall set allprofiles settings inboundusernotification enable
netsh advfirewall set allprofiles settings unicastresponsetomulticast enable
netsh advfirewall set allprofiles logging filename %SystemRoot%\System32\LogFiles\Firewall\pfirewall.log
# 为 telnet 添加入规则
netsh advfirewall firewall add rule name="Allow Inbound Telnet" dir=in program= %SystemRoot%\System32\tlntsvr.exe remoteip=localsubnet action=allow
# 为 web 添加入规则:
netsh advfirewall firewall add rule name="web_inbound_allow" protocol=TCP dir=in localport=80 action=allow
netsh advfirewall firewall delete rule name="web_inbound_allow"
netshe advfirewall firelwall set rule name="web_inbound_all" new remoteip="1.1.1.1"
# 导出防火墙所有配置到指定位置;
netsh advfirewall export C:\firewall.conf
# 删除防火墙当前所有配置,指定rule=all即可实现
netsh advfirewall firewall delete rule name=all
# 导入防火墙配置文件到系统
netsh advfirewall import C:\firewall.conf