Windows Server 2019 防火墙配置指南
详细讲清 Windows Server 2019 防火墙的开启方法、入站与出站端口放行步骤,以及用 PowerShell 快速创建规则的实用方案。
在 Windows Server 2019 上,系统自带的 Windows Defender 防火墙(高级安全) 是最基础、也最容易被忽视的一层安全防护。
它的作用很直接:过滤服务器的入站和出站网络流量,减少暴露面,拦截常见的扫描、探测和未授权连接。对于公网 Windows 云服务器来说,这一步尤其重要。很多用户在部署远程桌面、Web 服务、数据库中转、FTP 或自定义程序后,发现“服务明明启动了却连不上”,问题往往不在程序本身,而是在防火墙规则没有放行对应端口。
这篇文章就系统讲清楚:
- 如何确认 Windows Server 2019 防火墙已经开启
- 如何放行入站端口
- 如何放行出站端口
- 如何通过 PowerShell 命令行快速添加规则
- 配置时有哪些容易踩坑的细节
如果你使用的是海外 Windows 云服务器,这些设置几乎是日常运维的基础操作。尤其是中国大陆用户远程连接海外节点时,除了防火墙规则本身,还要同时关注远程桌面链路质量和线路延迟问题。比如在东京、新加坡、首尔、法兰克福等常见节点部署 Windows 服务器时,防火墙负责“能不能通”,线路优化则影响“用起来顺不顺”。像无尽道这类提供海外 Windows 云服务器的服务,除了可自助开通 Windows 实例外,还提供企业级 CN2 远程桌面加速,更适合需要长期远程操作海外服务器的场景。
为什么要配置 Windows 防火墙
Windows Server 2019 默认已经启用防火墙,并且对系统预装服务有一套基础放行规则。但在实际使用中,很多业务并不只使用一个固定端口,或者使用的是后装程序、自定义应用,这时系统默认规则往往无法覆盖。
常见场景包括:
- 新装 IIS、FTP、数据库后端口未放行
- 部署面板、管理工具、自定义 API 服务
- 程序使用 TCP 或 UDP 的非标准端口
- 需要限制某些出站连接,降低服务器被滥用风险
简单理解:
- 入站规则:别人访问你的服务器时是否允许
- 出站规则:你的服务器访问外部目标时是否允许
对于一台暴露在公网的 Windows 服务器来说,最理想的状态不是“全部开放”,而是 只开放业务真正需要的端口。
准备工作
在开始之前,你需要:
- 一台可登录的 Windows Server 2019 服务器
- 一个远程桌面连接工具,或云平台提供的网页控制台
- 管理员权限账户
如果你当前还没有服务器,通常建议直接选择支持自助开通的 Windows 云服务器。对于测试环境、小型业务或远程办公场景,按小时计费会更灵活。例如无尽道的基础型 Windows 云服务器,最低可从 0.1 元/小时、月封顶 50 元 起步;如果更看重远程桌面流畅度,则更适合选择高主频型实例。
连接到服务器后,就可以开始配置防火墙。
先确认 Windows 防火墙是否已开启
虽然 Windows Server 2019 默认通常是开启的,但仍然建议你手动确认一次。
操作路径如下:
- 打开 Server Manager(服务器管理器)
- 点击右上角或菜单中的 Tools(工具)
- 选择 Windows Defender Firewall with Advanced Security(高级安全 Windows Defender 防火墙)

进入控制台后,可以查看当前防火墙在不同网络配置文件下的状态。
如果状态不是开启,就点击 Windows Defender Firewall Properties(属性),分别按配置文件启用。

理解三种网络配置文件
Windows 防火墙的规则不是简单“全局生效”,它和 网络配置文件(Profile) 相关。主要有三种:
- Domain(域):服务器连接到企业域网络时使用
- Private(专用):较可信的内部网络环境
- Public(公用):公网、不可信或开放网络环境
对于大多数云服务器来说,公网环境通常更接近 Public。如果你添加了规则,但选错了配置文件,就可能出现“规则明明建好了,但服务还是不通”的情况。
为了避免这个问题,在公网云服务器场景下,通常可以直接勾选 Public,如果不确定当前环境,也可以同时勾选多个配置文件。
如何放行入站端口
入站端口用于处理“外部访问你的服务器”的请求。
例如:
- 放行
3389:允许远程桌面连接 - 放行
80/443:允许网站访问 - 放行
21:允许 FTP 访问 - 放行自定义端口:允许业务程序被外部访问
图形界面操作步骤
打开 Windows Defender Firewall with Advanced Security 后:
- 在左侧点击 Inbound Rules(入站规则)
- 在右侧操作栏点击 New Rule(新建规则)

- 在规则类型中选择 Port(端口)
- 点击 Next(下一步)

选择协议类型:
- TCP
- UDP
选择 Specific local ports(特定本地端口)
- 输入需要放行的端口号
支持以下写法:
- 单个端口:
80 - 多个端口:
80,443,3389 - 端口范围:
8000-8100
然后点击下一步。

选择规则动作
接下来会进入动作设置页面,常见选项有三个:
- Allow the connection:允许连接
- Allow the connection if it is secure:仅在安全连接条件下允许
- Block the connection:阻止连接

如果你的目标是开放端口,通常选择:
- Allow the connection
然后点击下一步。
选择生效的配置文件
这里可以勾选:
- Domain
- Private
- Public
如果你的服务器部署在公网,建议至少勾选 Public。如果你不确定网络配置文件,也可以全部勾选,后续再按需收紧。
命名规则
最后给规则填写:
- 名称
- 描述
建议命名清晰一点,方便后续排查。例如:
Allow RDP 3389Allow HTTP 80Allow App TCP 9000
点击 Finish(完成) 后,规则立即生效。
这时,匹配该端口的入站连接就可以通过防火墙进入服务器了。
如何放行出站端口
很多人只关注入站规则,但某些业务还会依赖出站规则。
出站规则适用于“服务器主动访问外部网络”的情况,例如:
- 程序连接外部 API
- 服务器访问远程数据库
- 应用发送邮件、上传文件或调用第三方服务
- 某些安全场景下限制服务器主动联网范围
图形界面操作步骤
- 在防火墙控制台左侧点击 Outbound Rules(出站规则)
- 在右侧点击 New Rule(新建规则)

- 选择 Port(端口)
点击下一步
选择协议类型:
- TCP
- UDP
选择 Specific remote ports(特定远程端口)
- 输入目标端口号、多个端口或端口范围

- 在动作页面选择 Allow the connection
- 选择要应用的配置文件
- 填写规则名称和描述
- 点击 Finish
这样,服务器就能通过指定出站端口访问外部目标。

用 PowerShell 快速开放端口
如果你需要批量操作,或者更习惯命令行方式,PowerShell 会更高效。
在开始菜单中打开 PowerShell,然后执行类似下面的命令:
New-NetFirewallRule -Enabled True -LocalPort 21 -Protocol TCP -Direction Inbound -Profile Domain -Action Allow -DisplayName "example opening a port rule"
参数说明
New-NetFirewallRule:创建新的防火墙规则-Enabled True:启用规则-LocalPort 21:指定本地端口-Protocol TCP:指定协议-Direction Inbound:规则方向,入站-Profile Domain:应用到哪个配置文件-Action Allow:允许连接-DisplayName:规则显示名称
执行成功后,会返回类似下面的结果:
PS C:\Users\Administrator> New-NetFirewallRule -Enabled True -LocalPort 21 -Protocol TCP -Direction Inbound -Profile Domain -Action Allow -DisplayName "example opening a port rule"
Name : {427a1b12-ece6-4d54-847d-de482b227c6c}
DisplayName : example opening a port rule
Description :
DisplayGroup :
Group :
Enabled : True
Profile : Domain
Platform : {}
Direction : Inbound
Action : Allow
EdgeTraversalPolicy : Block
LooseSourceMapping : False
LocalOnlyMapping : False
Owner :
PrimaryStatus : OK
Status : The rule was parsed successfully from the store. (65536)
EnforcementStatus : NotApplicable
PolicyStoreSource : PersistentStore
PolicyStoreSourceType : Local
更实用的 PowerShell 示例
实际使用中,很多服务器直接部署在公网环境,因此更常见的是对 Public 配置文件放行。
放行远程桌面 3389
New-NetFirewallRule -Enabled True -LocalPort 3389 -Protocol TCP -Direction Inbound -Profile Public -Action Allow -DisplayName "Allow RDP 3389"
放行网站访问 80 和 443
New-NetFirewallRule -Enabled True -LocalPort 80,443 -Protocol TCP -Direction Inbound -Profile Public -Action Allow -DisplayName "Allow Web 80 443"
放行 UDP 端口
New-NetFirewallRule -Enabled True -LocalPort 5000 -Protocol UDP -Direction Inbound -Profile Public -Action Allow -DisplayName "Allow UDP 5000"
允许服务器访问外部某个端口
New-NetFirewallRule -Enabled True -RemotePort 443 -Protocol TCP -Direction Outbound -Profile Public -Action Allow -DisplayName "Allow Outbound HTTPS 443"
注意一点:
- 入站规则 常用
-LocalPort - 出站规则 常见场景下更适合使用
-RemotePort
配置完成后如何检查端口是否真的开放
防火墙规则建好后,如果服务仍然无法访问,可以按下面思路排查:
1. 确认程序确实在监听端口
例如查看 80、443、3389 等端口是否被程序占用。
netstat -ano
或者筛选指定端口:
netstat -ano | findstr :3389
如果端口没有监听,即使防火墙已放行,外部仍然无法连接。
2. 确认配置文件是否选对
如果服务器当前网络归类为 Public,而你的规则只绑定了 Domain,那么规则不会生效。
3. 确认云平台安全组或外层 ACL
有些云平台除了系统防火墙外,还有平台层的安全组、访问控制列表或边界防火墙。如果外层没放行,系统内放行也没用。
4. 确认服务本身没有限制来源 IP
有些程序虽然在监听端口,但只绑定了 127.0.0.1,或者限制了白名单来源。
5. 远程桌面卡顿不等于端口没开
尤其是中国大陆用户连接海外 Windows 服务器时,3389 端口开放只是“能连上”的前提,不代表体验一定流畅。真正影响操作感受的,往往是线路质量、抖动和高延迟。
如果你的使用场景是长期远程桌面办公、跨境运营、广告投放工具管理或海外业务后台维护,那么选节点时应优先考虑:
- 日本东京
- 日本大阪
- 新加坡
- 韩国首尔
这些区域通常对中国大陆访问更友好。像无尽道提供的海外 Windows 云服务器支持上述多个区域,并附带远程桌面优化能力,使用企业级 CN2 线路加速,适合对桌面交互流畅度要求较高的用户。
防火墙配置的几个实用建议
只开放必须的端口
不要因为图省事就关闭整个防火墙,也不要一口气放行大量无关端口。最安全的方式始终是:
- 只开业务需要的端口
- 不用的端口及时删除规则
- 命名规范,方便审计
尽量区分规则用途
建议按服务单独建规则,而不是把所有端口写进一条大规则里。后期维护会轻松很多。
对公网 Windows 服务器尤其要保护 RDP
远程桌面端口 3389 是常见扫描目标。除了放行端口,还建议:
- 修改管理员账户名
- 设置高强度密码
- 尽量限制来源 IP
- 结合远程桌面加速与安全策略使用
测试环境可按小时计费更灵活
如果你只是临时测试某个 Windows 服务是否需要开放某些端口,按小时计费的 Windows 云服务器会更省成本。比如创建一台基础型实例,短时间验证 IIS、FTP、数据库或 API 服务的端口策略,测试完成后再决定是否长期保留。无尽道这类按小时计费、月封顶的模式,就比较适合这类弹性测试场景。
总结
在 Windows Server 2019 上,防火墙配置并不复杂,但非常关键。只要理解了几个核心点,日常操作就会清晰很多:
- 先确认防火墙已开启
- 根据需求区分入站和出站规则
- 放行正确的 TCP 或 UDP 端口
- 注意规则应用到哪种网络配置文件
- 必要时用 PowerShell 提高配置效率
完成这些设置后,服务器就能按你的规则接受或发起连接,同时继续拦截不符合条件的网络访问。
如果你经常需要部署海外 Windows 服务器,除了防火墙本身,建议把节点区域、远程桌面流畅度、计费模式也一起纳入考虑。对于需要东京、新加坡、首尔、法兰克福等海外节点,并且希望自助开通、按小时计费、直接使用正版授权 Windows 系统的用户,选择成熟的 Windows 云服务器平台会省去很多环境搭建成本。