Windows通过netsh控制安全中心防火墙和网络保护策略

ops/2024/10/25 9:42:00/

Windows通过netsh控制安全中心防火墙和网络保护策略

1. 工具简介

【1】. Windows安全中心

在这里插入图片描述

【2】. netsh工具

netsh(Network Shell) 是一个Windows系统本身提供的功能强大的网络配置命令行工具。

2. 开启/关闭防火墙策略

在设置端口(禁用/启用)前,先设置防火墙策略。

备注: 所有命令均以管理员权限运行!!!

【1】. 开启防火墙策略

netsh advfirewall set allprofile state on

效果如下:

C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall set allprofile state on
确定。

【2】. 关闭防火墙策略

netsh advfirewall set allprofile state off

效果如下:

C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall set allprofile state off
确定。

【3】. 查看防火墙策略状态

netsh advfirewall show allprofile state

效果如下:

# 开启状态
C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall set allprofile state on
确定。C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall show allprofile state域配置文件 设置:
----------------------------------------------------------------------
状态                                  启用专用配置文件 设置:
----------------------------------------------------------------------
状态                                  启用公用配置文件 设置:
----------------------------------------------------------------------
状态                                  启用
确定。C:\Users\Administrator># 关闭状态
C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall set allprofile state off
确定。C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall show allprofile state域配置文件 设置:
----------------------------------------------------------------------
状态                                  关闭专用配置文件 设置:
----------------------------------------------------------------------
状态                                  关闭公用配置文件 设置:
----------------------------------------------------------------------
状态                                  关闭
确定。C:\Users\Administrator>

3. 端口禁用/启用

在设置端口禁用或启用前,需要设置防火墙策略为开启状态。

【1】. 命令行使用说明

C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall firewall add rule提供的许多参数无效。请查看帮助获取正确语法。用法: add rule name=<string>dir=in|outaction=allow|block|bypass[program=<program path>][service=<service short name>|any][description=<string>][enable=yes|no (default=yes)][profile=public|private|domain|any[,...]][localip=any|<IPv4 address>|<IPv6 address>|<subnet>|<range>|<list>][remoteip=any|localsubnet|dns|dhcp|wins|defaultgateway|<IPv4 address>|<IPv6 address>|<subnet>|<range>|<list>][localport=0-65535|<port range>[,...]|RPC|RPC-EPMap|IPHTTPS|any (default=any)][remoteport=0-65535|<port range>[,...]|any (default=any)][protocol=0-255|icmpv4|icmpv6|icmpv4:type,code|icmpv6:type,code|tcp|udp|any (default=any)][interfacetype=wireless|lan|ras|any][rmtcomputergrp=<SDDL string>][rmtusrgrp=<SDDL string>][edge=yes|deferapp|deferuser|no (default=no)][security=authenticate|authenc|authdynenc|authnoencap|notrequired(default=notrequired)]备注:- 将新的入站或出站规则添加到防火墙策略。- 规则名称应该是唯一的,且不能为 "all"。- 如果已指定远程计算机或用户组,则 security 必须为authenticate、authenc、authdynenc 或 authnoencap。- 为 authdynenc 设置安全性可允许系统动态协商为匹配给定 Windows Defender 防火墙规则的通信使用加密。根据现有连接安全规则属性协商加密。选择此选项后,只要入站 IPsec 连接已设置安全保护,但未使用 IPsec 进行加密,计算机就能够接收该入站连接的第一个 TCP 或UDP 包。一旦处理了第一个数据包,服务器将重新协商连接并对其进行升级,以便所有后续通信都完全加密。- 如果 action=bypass,则 dir=in 时必须指定远程计算机组。- 如果 service=any,则规则仅应用到服务。- ICMP 类型或代码可以为 "any"。- Edge 只能为入站规则指定。- AuthEnc 和 authnoencap 不能同时使用。- Authdynenc 仅当 dir=in 时有效。- 设置 authnoencap 后,security=authenticate 选项就变成可选参数。示例:为不具有封装的 messenger.exe 添加入站规则:netsh advfirewall firewall add rule name="allow messenger"dir=in program="c:\programfiles\messenger\msmsgs.exe"security=authnoencap action=allow为端口 80 添加出站规则:netsh advfirewall firewall add rule name="allow80"protocol=TCP dir=out localport=80 action=block为 TCP 端口 80 通信添加需要安全和加密的入站规则:netsh advfirewall firewall add rulename="Require Encryption for Inbound TCP/80"protocol=TCP dir=in localport=80 security=authdynencaction=allow为 messenger.exe 添加需要安全的入站规则:netsh advfirewall firewall add rule name="allow messenger"dir=in program="c:\program files\messenger\msmsgs.exe"security=authenticate action=allow为 SDDL 字符串标识的组 acmedomain\scanners 添加经过身份验证的防火墙跳过规则:netsh advfirewall firewall add rule name="allow scanners"dir=in rmtcomputergrp=<SDDL string> action=bypasssecurity=authenticate为 udp- 的本地端口 5000-5010 添加出站允许规则Add rule name="Allow port range" dir=out protocol=udp localport=5000-5010 action=allowC:\Users\Administrator>

【2】. 禁用TCP-104端口

【A】. 设置策略
netsh advfirewall firewall add rule name="DenyTcp104" dir=in action=block protocol=TCP localport=104

效果如下:

C:\Users\Administrator>netsh advfirewall firewall add rule name="DenyTcp104" dir=in action=block protocol=TCP localport=104
确定。C:\Users\Administrator>
【B】. 查看策略

查看指定策略

netsh advfirewall firewall show rule name="DenyTcp104"

效果如下:

C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall firewall show rule name="DenyTcp104"规则名称:                             DenyTcp104
----------------------------------------------------------------------
已启用:                               是
方向:                                 入
配置文件:                             域,专用,公用
分组:
本地 IP:                              任何
远程 IP:                              任何
协议:                                 TCP
本地端口:                            104
远程端口:                           任何
边缘遍历:                             否
操作:                                 阻止
确定。C:\Users\Administrator>

查看所有策略

netsh advfirewall firewall show rule name=all

效果如下:

C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall firewall show rule name=all规则名称:                             DenyTcp104
----------------------------------------------------------------------
已启用:                               是
方向:                                 入
配置文件:                             域,专用,公用
分组:
本地 IP:                              任何
远程 IP:                              任何
协议:                                 TCP
本地端口:                            104
远程端口:                           任何
边缘遍历:                             否
操作:                                 阻止规则名称:                             Microsoft Edge (mDNS-In)
----------------------------------------------------------------------
已启用:                               是
方向:                                 入
配置文件:                             域,专用,公用
分组:                                 Microsoft Edge
本地 IP:                              任何
远程 IP:                              任何
协议:                                 UDP
本地端口:                            5353
远程端口:                           任何
边缘遍历:                             否
操作:                                 允许规则名称:                             OpenSSH SSH Server (sshd)
----------------------------------------------------------------------
已启用:                               是
方向:                                 入
配置文件:                             域,专用,公用
分组:                                 OpenSSH Server
本地 IP:                              任何
远程 IP:                              任何
协议:                                 TCP
本地端口:                            22
远程端口:                           任何
边缘遍历:                             否
操作:                                 允许规则名称:                             Workflow Manager Tools 1.0 for Visual Studio 2012 - Test Service Host
----------------------------------------------------------------------
已启用:                               否
方向:                                 入
配置文件:                             域,专用
分组:
本地 IP:                              任何
远程 IP:                              任何
协议:                                 TCP
本地端口:                            12292
远程端口:                           任何
边缘遍历:                             否
操作:                                 允许规则名称:                             Visual Studio 2013 远程调试器发现 (devenv.exe)......
【C】. 删除策略
netsh advfirewall firewall delete rule name="DenyTcp104"

效果如下:

C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall firewall show rule name="DenyTcp104"规则名称:                             DenyTcp104
----------------------------------------------------------------------
已启用:                               是
方向:                                 入
配置文件:                             域,专用,公用
分组:
本地 IP:                              任何
远程 IP:                              任何
协议:                                 TCP
本地端口:                            104
远程端口:                           任何
边缘遍历:                             否
操作:                                 阻止
确定。C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall firewall delete rule name="DenyTcp104"已删除 1 规则。
确定。C:\Users\Administrator>
C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall firewall show rule name="DenyTcp104"没有与指定标准相匹配的规则。C:\Users\Administrator>

【3】. 允许TCP-104端口

【A】. 综合演示

效果如下:

C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall firewall add rule name="AllowTcp104" dir=in action=allow protocol=TCP localport=104
确定。C:\Users\Administrator>
C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall firewall show rule name="AllowTcp104"规则名称:                             AllowTcp104
----------------------------------------------------------------------
已启用:                               是
方向:                                 入
配置文件:                             域,专用,公用
分组:
本地 IP:                              任何
远程 IP:                              任何
协议:                                 TCP
本地端口:                            104
远程端口:                           任何
边缘遍历:                             否
操作:                                 允许
确定。C:\Users\Administrator>
C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall firewall delete rule name="AllowTcp104"已删除 1 规则。
确定。C:\Users\Administrator>
C:\Users\Administrator>netsh advfirewall firewall show rule name="AllowTcp104"没有与指定标准相匹配的规则。C:\Users\Administrator>

4. ICMP禁用/启用

【1】. 允许/禁止所有ICMP包通过

ICMP数据包(例如ping请求)能通过Windows防火墙:

netsh advfirewall firewall add rule name="Allow ICMPv4-In" protocol=icmpv4:8,any dir=in action=allow

取消上述规则,则执行如下命令:

netsh advfirewall firewall delete rule name="Allow ICMPv4-In"

5. TCP协议端口控制

【1】. 特定端口禁用/启用

开放 TCP 协议10086 端口:

netsh advfirewall firewall add rule name="Allow TCP 10086" dir=in action=allow protocol=TCP localport=10086

关闭 TCP 协议 10086端口:

netsh advfirewall firewall delete rule name="Allow TCP 10086"

【2】. 全部端口禁用/启用

使用帮助:

# localport端口指定参数:
[localport=0-65535|<port range>[,...]|RPC|RPC-EPMap|IPHTTPS|any (default=any)]

开放 TCP 协议全部 端口:

netsh advfirewall firewall add rule name="Allow TCP All" dir=in action=allow protocol=TCP

关闭 TCP 协议 全部端口:

netsh advfirewall firewall delete rule name="Allow TCP All"

6. UDP协议端口控制

【1】. 特定端口禁用/启用

开放 UDP 协议5001 端口:

netsh advfirewall firewall add rule name="Allow UDP 5001" dir=in action=allow protocol=UDP localport=5001

关闭 UDP 协议 5001端口:

netsh advfirewall firewall delete rule name="Allow UDP 5001"

【2】. 全部端口禁用/启用

开放 UDP 协议全部 端口:

netsh advfirewall firewall add rule name="Allow UDP All" dir=in action=allow protocol=UDP

关闭 UDP 协议 全部端口:

netsh advfirewall firewall delete rule name="Allow UDP All"

http://www.ppmy.cn/ops/128291.html

相关文章

C++ [项目] 飞机大战

现在才发现C游戏的支持率这么高&#xff0c;那就发几篇吧 一、基本介绍 支持Dev-C5.11版本(务必调为英文输入法),基本操作看游戏里的介绍,怎么做的……懒得说,能看懂就看注释,没有的自己猜,如果你很固执……私我吧 二、代码部分 /* 2024.8.13*/ #include<iostream> #i…

论软件设计方法及其应用

1. 概要叙述项目经验 在我参与的一个大型电子商务平台开发项目中&#xff0c;我担任软件设计师的角色。该平台旨在为用户提供便捷的在线购物体验&#xff0c;涵盖商品展示、购物车、订单管理、支付系统以及售后服务等功能模块。项目的挑战在于需要处理大量的并发用户请求&…

Spring Boot:植物健康监测的智能先锋

摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了植物健康系统的开发全过程。通过分析植物健康系统管理的不足&#xff0c;创建了一个计算机管理植物健康系统的方案。文章介绍了植物健康系统的系统分析部分&…

iOS--利用UITableViewDataSourcePrefetching实现平滑如丝的无限滚动

前言&#xff1a; 相信大家在网络不好的时候使用列表分页的App会获得非常不好的体验&#xff0c;由于网络的问题&#xff0c;会有明显的卡顿&#xff0c;就像抖音等App&#xff0c;那么我们是否能使用一些手段来优化这个体验呢&#xff1f;这里可以用到UITableView中另一个协议…

C语言程序设计:现代设计方法习题笔记《chapter4》

第一题 示例代码&#xff1a; #include<stdio.h>int main() {printf("Enter a two-digit number: ");int number,ten_n,g_n;scanf_s("%d", &number);ten_n number / 10;g_n number % 10;printf("The reversal is %d%d", g_n, ten_n…

vscode 插件推荐安装

vscode 插件推荐安装 (必装)Chinese (Simplified) (简体中文) 可以设置成中文 Vue VSCode Snippets 介绍&#xff1a;这个插件提供了一系列的代码片段&#xff0c;帮助你快速编写 Vue 模板、脚本和样式。使用方式&#xff1a;安装插件后&#xff0c;输入特定的缩写&#xff…

华为云弹性云服务器无法登录远程操作

遇到的问题&#xff1a; 就是你在创建弹性云服务器的时候选择了没有子网的虚拟私有云&#xff0c; 你属于误删了虚拟私有云的子网&#xff0c;自己没有注意看 如果在华为云创建弹性云服务器时选择的虚拟私有云&#xff08;VPC&#xff09;没有配置子网&#xff0c;那么在尝试远…

SpringBoot篇(任务)

目录 前言 一、Quartz 1. 简介 2. 总结 3. 思考 二、Task 1. 简介 2. 总结 3. 代码 前言 springboot整合第三方技术第二部分我们来说说任务系统&#xff0c;其实这里说的任务系统指的是定时任务。 定时任务是企业级开发中必不可少的组成部分&#xff0c;诸如长周期业…