IIS 8.0服务器如何关闭无用端口和无用服务?-05互联
>

新闻中心 / IIS 8.0服务器如何关闭无用端口和无用服务?

IIS 8.0服务器如何关闭无用端口和无用服务?

发布时间:2026/10/23 0:50:12

IIS 8.0服务器如何关闭无用端口和无用服务?详细操作教程

如果你使用的是 Windows Server 2012 / 2012 R2 + IIS 8.0,可以通过 Windows 防火墙和系统服务管理器关闭不必要的端口与服务,提高服务器安全性。

重要:先确认端口或服务没有被网站使用,再进行关闭。 如果你是通过远程桌面管理服务器,尤其不要直接关闭 3389 端口。

一、查看服务器开放了哪些端口

第一步: 按 Win + R,输入 cmd。

第二步: 输入以下命令:

netstat -ano

如果只查看正在监听的 TCP 端口:

netstat -ano | findstr LISTENING

例如:

TCP    0.0.0.0:21     LISTENING    1234
TCP    0.0.0.0:80     LISTENING    4
TCP    0.0.0.0:443    LISTENING    4
TCP    0.0.0.0:3389   LISTENING    1056

假设 1234 是进程 PID,可以查询对应程序:

tasklist /svc /FI "PID eq 1234"

这样能够帮助判断开放端口属于哪个程序或系统服务。


二、使用防火墙关闭无用端口

例如,你的服务器不需要 FTP 服务,想阻止外部访问 TCP 21 端口。

Windows 防火墙设置

  1. 按 Win + R,输入 wf.msc。

  2. 点击左侧 Inbound Rules(入站规则)。

  3. 点击右侧 New Rule(新建规则)。

  4. 选择 Port(端口)。

  5. 选择 TCP。

  6. 选择 Specific local ports(特定本地端口)。

  7. 输入 21。

  8. 选择 Block the connection(阻止连接)。

  9. 根据需要勾选 Domain、Private、Public。

  10. 规则名称填写 Block TCP 21,点击 Finish。

这样就创建了阻止 TCP 21 入站连接的规则。注意,这只是限制网络访问,并不会停止 FTP 服务本身。


更简单的 CMD 命令方法

以管理员身份打开 CMD:

netsh advfirewall firewall add rule name="Block TCP 21" dir=in action=block protocol=TCP localport=21

如果需要撤销:

netsh advfirewall firewall delete rule name="Block TCP 21"

仅在确认不需要该端口时才执行。如果端口还受云服务器安全组控制,也要检查相应安全组规则。

三、关闭 Windows 无用系统服务

第一步,按 Win + R,输入:

services.msc

第二步,找到确认不需要的服务,双击进入属性。

第三步,点击 Stop(停止)。

第四步,测试网站和其他业务是否正常。如果确认没有依赖,再将 Startup type(启动类型) 改为 Disabled(禁用)。

第五步,点击 Apply 和 OK 保存。

不要随意禁用 Windows Firewall、Base Filtering Engine、RPC、Windows Process Activation Service 或 IIS 网站正常运行所需的系统服务。

四、IIS 8.0关闭不需要的 FTP 服务

如果你的 IIS 服务器只提供 HTTPS 网站,不使用 FTP 上传文件,可以检查并关闭 FTP。

  1. 按 Win + R,输入 inetmgr。

  2. 展开左侧 Sites(网站)。

  3. 找到实际运行的 FTP 站点。

  4. 右键 FTP 站点,选择 Manage FTP Site → Stop。

  5. 确认不再需要 FTP 后,再考虑停用 FTP 服务或卸载 FTP Server 角色服务。

IIS 8.0 支持独立管理 FTP 站点,无须停止整个网站服务。


五、哪些端口建议关闭?

端口

服务

建议

21

FTP

不使用就关闭

23

Telnet

建议禁用

135

RPC

限制公网访问

139

NetBIOS

不需要时限制

445

SMB

避免公网暴露

1433

SQL Server

限制访问来源

3306

MySQL

限制公网访问

3389

远程桌面

保留必要管理访问

80

HTTP

根据网站需要保留

443

HTTPS

网站通常需要保留

数据库即使部署在同一台服务器,也可能被网站使用,不能仅凭端口编号判断服务是否无用。

六、关闭后如何检查?

再次执行:

netstat -ano

检查不需要的服务是否仍在监听。

注意: 防火墙阻止了端口,不代表该端口会从 netstat 结果中消失。需要分别确认服务状态和外部网络访问结果。

最后访问 https://www.05vm.com,确认 HTTPS 网站仍然正常运行。

对于你这台 IIS 8.0 服务器,我建议优先排查 21、23、139、445、1433、3306 等不必要的公网开放端口,确认依赖后逐项处理;保留网站需要的 80、443 端口,并严格限制 3389 的远程管理访问。