我想在不使用任何防火墙或类似软件的情况下关闭 Windows 计算机上的端口?此外,我只想在使用明确命令时打开它们。我没有尝试任何方法,因为我不知道该怎么做。我搜索了 SU,但只找到了有关使用防火墙软件执行此操作的问题,但我不想再使用第三方软件了。
我希望我尝试做的事情是可行的,并且我会在这里得到答案。谢谢
答案1
首先:不是,因为根据某些规则阻止数据包正是防火墙所做的做。即使你使用内置函数来做这件事,那也会仍然被称为防火墙。(或数据包过滤器,或网络 ACL。)
这也意味着“防火墙”不一定是第三方软件。Windows 的许多版本都内置了防火墙。虽然在 Windows XP 上它只过滤传入的连接 - 只需运行firewall.cpl
- 但 Windows 7 版本可以双向设置规则(通过控制台配置 wf.msc
)。
(即使回到 NT 4.0,您也可以在 TCP/IP 设置深处找到“基于端口的过滤”选项 - 无状态防火墙。)
虽然不必直接在计算机上进行操作;但如果计算机是固定的,则通常可以将相同类型的防火墙规则添加到路由器或交换机中。这完全取决于您要保护的对象/对象。
答案2
您可以关闭服务器。脚本可以识别并终止进程,或者您可以使用 taskkill 命令手动终止进程。(实际上并不是阻止端口,顺便说一句,谷歌建议阻止端口是与防火墙相关的术语,我不确定还有什么,也许是 NAT 路由器)
我发现截至撰写本文时您尚未指定 Windows 版本。没关系,您的问题也只是理论上的问题。
(安全研究员或爱好者)Volker Birk 编写了一个关闭 Windows XP 服务器的程序
我不知道 Windows 7 是否有
但他提供了源代码,以便 C 程序员可以采用它。
我还没有尝试过 Volker Birk 的“关闭 Windows 服务器”程序,但是使用关闭 Windows 服务器的程序,您会发现服务器关闭后功能较少,例如没有文件共享。
如果您让服务器继续运行并将其从计算机阻止,则可能始终将其算作防火墙。无论是否是第三方。