菜鸟科技网

如何安全开启445端口命令?

在Windows操作系统中,端口445是SMB(Server Message Block)协议的默认端口,主要用于文件共享、打印共享以及远程过程调用(RPC)通信等场景,默认情况下,Windows系统可能会开启此端口,但也可能因安全考虑(如防范勒索病毒攻击)而被关闭,若需手动开启或管理445端口,可通过多种命令行工具实现,以下是详细操作步骤及注意事项。

如何安全开启445端口命令?-图1
(图片来源网络,侵删)

通过Windows防火墙开启445端口

Windows防火墙是控制端口访问的核心工具,可通过命令行或图形界面操作,以下是使用命令行开启445端口的步骤:

使用netsh命令管理防火墙规则

netsh是Windows网络配置的命令行工具,支持高级防火墙规则管理,以管理员身份打开命令提示符(CMD)或PowerShell,执行以下命令:

添加入站规则允许445端口访问:

netsh advfirewall firewall add rule name="Open Port 445" dir=in action=allow protocol=TCP localport=445
  • name:规则名称,可自定义;
  • dir=in:指定入站方向;
  • action=allow:允许通过;
  • protocol=TCP:445端口基于TCP协议;
  • localport=445:目标端口号。

验证规则是否添加成功:

如何安全开启445端口命令?-图2
(图片来源网络,侵删)
netsh advfirewall firewall show rule name="Open Port 445"

删除规则(如需关闭端口):

netsh advfirewall firewall delete rule name="Open Port 445"

启用或禁用SMB协议相关服务

445端口的开启与SMB服务状态直接相关,需确保以下服务运行:

  • Server(lanmanserver):提供文件和打印共享;
  • Workstation(lanmanworkstation):支持网络连接和远程访问。

检查服务状态:

sc query lanmanserver
sc query lanmanworkstation

启动服务(若未运行):

如何安全开启445端口命令?-图3
(图片来源网络,侵删)
sc start lanmanserver
sc config lanmanserver start=auto
sc start lanmanworkstation
sc config lanmanworkstation start=auto

停止服务(若需关闭端口):

sc stop lanmanserver
sc config lanmanserver start=disabled

通过注册表修改SMB协议配置

部分情况下,需通过注册表调整SMB协议的启用状态,尤其涉及旧版系统(如Windows 7)或特定安全策略时。

修改SMB1.0协议配置

SMB1.0存在安全漏洞,建议禁用,但若需兼容旧设备,可通过注册表启用:

打开注册表编辑器:

regedit

定位路径:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

修改或添加DWORD值:

  • SMB1:值为0禁用,1启用;
  • RequireSecureNegotiate:值为1强制启用安全协商(推荐)。

启用SMB over QUIC(Windows 11/Server 2022+)

新版系统支持SMB over QUIC(基于UDP的加密传输),需通过注册表启用:

定位路径:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SMB\Parameters

添加DWORD值:

  • EnableSmbOverQuic:值为1启用。

使用PowerShell管理端口和SMB服务

PowerShell提供更强大的对象化操作能力,适合批量管理。

新建防火墙规则

New-NetFirewallRule -DisplayName "Open Port 445" -Direction Inbound -Protocol TCP -LocalPort 445 -Action Allow

查询SMB服务状态

Get-Service -Name "lanmanserver", "lanmanworkstation" | Format-Table Name, Status, StartType

启用SMBv2/v3协议

Set-SmbServerConfiguration -EnableSMB2Protocol $true -Force

注意事项

  1. 安全风险:445端口是勒索病毒(如WannaCry)的常见攻击目标,非必要时应保持关闭或限制访问IP。
  2. 系统兼容性:不同Windows版本(如Win10/WinServer2019)的命令参数可能略有差异,需提前测试。
  3. 网络环境:企业环境中建议结合组策略(GPO)统一配置,避免手动操作遗漏。

相关操作对比表

操作目标 命令行工具 关键命令示例
添加防火墙规则 netsh netsh advfirewall firewall add rule name="Open Port 445" dir=in action=allow protocol=TCP localport=445
启动SMB服务 sc sc start lanmanserver
禁用SMB1.0 注册表 修改HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\ParametersSMB1值为0
查询端口状态 PowerShell Get-NetTCPConnection -LocalPort 445

相关问答FAQs

Q1: 如何确认445端口是否已开启?
A1: 可通过以下方式验证:

  1. 命令行执行netstat -ano | findstr "445",查看是否有监听状态为LISTENING的进程;
  2. 使用PowerShell命令Get-NetTCPConnection -LocalPort 445 | Select-Object State,检查端口状态;
  3. 第三方工具(如PortQry)扫描端口状态。

Q2: 开启445端口后如何限制特定IP访问?
A2: 可通过高级防火墙规则实现,例如仅允许内网IP段(192.168.1.0/24)访问:

netsh advfirewall firewall add rule name="Allow 445 for LAN" dir=in action=allow protocol=TCP localport=445 remoteip=192.168.1.0/24

若需拒绝其他IP,可添加拒绝规则并调整优先级(通过rule name="..." new enable=yes profile=any)。

分享:
扫描分享到社交APP
上一篇
下一篇