如何停止监听135端口?

如何停止监听135端口?

我在学习套接字编程(TCP 服务器)在 Windows 7 上,但不断出现的错误消息是:

端口 135 正在使用中。

我可以看到端口 135 正在监听netstat。因此,我想停止端口 135 以使 TCP 服务器程序运行。

我做了以下几件事。

  1. 导航至键:HKEY_LOCAL_MACHINE\Software\Microsoft\OLE

  2. 在右侧栏中找到该值EnableDCOM,并将该值修改为N

  3. 导航到此注册表项:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\RPC

  4. 右键单击并修改名为的值DCOM Protocols在键下Value Data,您将看到如下所示的值(或类似内容)。这些值使端口 135 保持打开状态。突出显示列出的所有内容并删除所有现有数据,从而通过禁用该DCOM服务dcomcnfg

但端口 135 仍在监听。如何停止监听该端口?

我在这里找到了说明:

http://www.pimp-my-rig.com/2008/10/faq-disable-port-135-disable-dcom.html#sthash.Bt1qMvEf.dpuf

答案1

我也有同样的问题。

TCP 端口 135 由 DCOM(基于 RPC)和 Raw RPC 服务器组件共享,作为 TCP/UDP/NamedPipe 传输层的公共入口,由各个 DCOM/Raw RPC 服务器组件选择,因此并不像“在此计算机上禁用 DCOM”那样简单就能停止端口 135。

目前,我通过手动添加防火墙规则(禁用 135)来禁用端口 135: netsh advfirewall firewall add rule name="stop listening at TCP port 135" protocol=TCP dir=in localport=135 action=block enable=yes

通过工具 rpcdump.py 测试了 RPC 135 端口冲击包开源项目和其他相关的东西,
我已经确认了有关TCP端口135的一些信息:

  1. 任何人都可以连接到 TCP 端口 135 然后获取 RPC 接口列表,无需任何权限。
  2. 此类 RPC 接口的进一步使用需要身份验证,我还没有弄清楚身份验证在 TCP 端口 135 上是如何工作的。
  3. 禁用 TCP 端口 135 不会影响 SMB(Windows 文件共享等...,您仍然可以从客户端计算机使用 psexec/mmc/registry 访问该计算机,这是因为它们都通过 SMB(TCP 端口 445)调用 RPC。
  4. 禁用 TCP 端口 135 不会影响本地 DCOM/Raw RPC 服务器组件,因为它们不需要网络。
  5. 禁用 TCP 端口 135 只会影响一些直接使用 DCOM 远程激活(即 VB CreateObject("Excel.Application", RemoteMachine) )或 RemoteMachine 上的原始 RPC 绑定(即一些 Windows 旧式内部管理服务)的客户端计算机

结论是TCP端口135对于大多数非服务器计算机来说是没用的。

对于服务器计算机,我还没有进行太多测试,似乎类似“DFS 管理”服务会自动添加防火墙规则来启用端口。

一些外部参考:

答案2

你可能会发现串口控制器对此有用。

相关内容