Windows Server关闭135、139、445等端口的正确方法(不使用防火墙或安全策略)

本文详细介绍了如何在 Windows Server 系统中手动关闭135、139、445等高危端口,而不依赖防火墙或IP安全策略。通过修改服务配置、注册表和系统组件,实现真正意义上的端口关闭,确保服务器安全防护更加彻底。

Windows Server关闭135、139、445等端口的正确方法(不使用防火墙或安全策略)

一、为什么要关闭135、139、445端口

在Windows Server系统中,端口135、139、445常被用于远程调用(RPC)、文件共享(SMB)以及网络浏览服务。
这些端口虽然是系统默认启用的,但在生产或外网环境下,极易被黑客扫描、利用,例如“永恒之蓝(EternalBlue)”漏洞就依赖445端口传播。
因此,手动关闭这些端口能有效降低被攻击风险。

二、常见端口作用简析

端口 协议 作用
135 TCP RPC端口,用于远程过程调用服务
139 TCP NetBIOS会话服务,用于文件共享
445 TCP SMB直接传输服务,用于共享文件和打印机

三、关闭端口的正确方式(非防火墙)

禁用相关系统服务

在命令提示符(管理员权限)下执行以下命令:

sc stop lanmanserver
sc config lanmanserver start= disabled

sc stop lanmanworkstation
sc config lanmanworkstation start= disabled

sc stop RpcSs
sc config RpcSs start= disabled

说明:

  • lanmanserver:负责文件与打印共享(会关闭139、445端口)

  • RpcSs:远程过程调用服务(会关闭135端口)

  • 这些命令会直接停止并禁止自动启动服务。

执行完毕后,可通过以下命令验证端口状态:

netstat -na | findstr ":135"
netstat -na | findstr ":139"
netstat -na | findstr ":445"

如果未显示相关端口监听,即表示关闭成功。

修改注册表彻底禁用SMB协议

打开注册表编辑器(regedit)并导航至:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

新建或修改以下DWORD值:

SMB1 = 0
SMB2 = 0

保存后重启服务器

禁用NetBIOS over TCP/IP

操作步骤:

  1. 打开“网络和共享中心”

  2. 点击“更改适配器设置”

  3. 右键你的网卡 → 属性 → 双击“Internet协议版本4 (TCP/IPv4)”

  4. 点击“高级” → “WINS”选项卡

  5. 选择“禁用NetBIOS over TCP/IP”

  6. 确认并保存

该操作将关闭139端口的监听。

四、验证端口是否关闭

重启系统后,执行:

netstat -ano | findstr "135"
netstat -ano | findstr "139"
netstat -ano | findstr "445"

若无任何输出,即表示端口已被系统彻底关闭。

五、风险与注意事项

  • 关闭这些端口后,文件共享、打印共享、远程调用等功能将不可用。

  • 若服务器与域控通信或依赖SMB,请谨慎执行。

  • 建议在测试环境中验证无误后再在生产系统执行。

六、总结

通过禁用相关服务、修改注册表和关闭NetBIOS,可以在不依赖防火墙或第三方工具的情况下彻底关闭Windows Server的135、139、445等高危端口,从源头阻断网络攻击入口,提升系统安全性。

分享

你的反应是什么?

喜欢 喜欢 0
不喜欢 不喜欢 0
爱 0
有趣的 有趣的 0
生气的 生气的 0
伤心 伤心 0
哇 0