有人可以解释每个Windows RPC端口的使用时间和频率吗?我了解的“核心”是:
- 港口135
- 端口137
- 港口139
- 135端口的“目录”发布的高级端口
然后,我听说使用145端口来使NBT / TCP变得“更好”,但是我不确定这与Windows客户端启动RPC操作的顺序如何匹配。
谁能一劳永逸地解决我对RPC端口的了解?
有人可以解释每个Windows RPC端口的使用时间和频率吗?我了解的“核心”是:
然后,我听说使用145端口来使NBT / TCP变得“更好”,但是我不确定这与Windows客户端启动RPC操作的顺序如何匹配。
谁能一劳永逸地解决我对RPC端口的了解?
Answers:
这篇TechNet文章很棒,我建议您将其添加为书签。它列出了各种Windows服务使用的端口,并且非常详尽。
在Windows Vista / 2008之前的Windows版本中,NetBIOS用于“ RPC定位器”服务,该服务管理RPC名称服务数据库。但是在Vista / 2008及更高版本中,RPC Locator服务不再是必需或有用的。这是遗迹。从这一点开始,我将只谈论Vista / 2008 +上的MSRPC。
端口137、138和139用于NetBIOS,对于MSRPC的功能不是必需的。
RPC使用的所有端口如下:
RPC EPM TCP 135
RPC over HTTPS TCP 593
SMB (for named pipes) TCP 445
Ephemeral Range, Dynamic *
其他应用程序(例如远程桌面网关)将使用RPC over HTTP代理并使用端口443等。
尽管我上面链接的文章列出了NetBIOS端口,但假定您可以通过其他方式(DNS)获取名称解析,并且假定远程服务本身不依赖于NetBIOS,则这些端口是旧的,并且不是RPC所必需的。
端口145虚假。它什么都没用。无论您在何处听到它“使事情变得更好”,都是错误的。
基本MSRPC使用端口135和高编号的动态范围。较高的动态范围是XP / 2003和更低版本上的端口1024-5000,以及Vista / 2008和更高版本上的49152-65535。您也可以将该端口范围称为临时端口。
您可以根据需要定义自定义端口范围,如下所示:
reg add HKLM\SOFTWARE\Microsoft\Rpc\Internet /v Ports /t REG_MULTI_SZ /f /d 8000-9000
reg add HKLM\SOFTWARE\Microsoft\Rpc\Internet /v PortsInternetAvailable /t REG_SZ /f /d Y
reg add HKLM\SOFTWARE\Microsoft\Rpc\Internet /v UseInternetPorts /t REG_SZ /f /d Y
和/或
netsh int ipv4 set dynamicport tcp start=8000 num=1001
netsh int ipv4 set dynamicport udp start=8000 num=1001
netsh int ipv6 set dynamicport tcp start=8000 num=1001
netsh int ipv6 set dynamicport udp start=8000 num=1001
TCP端口135是MSRPC终结点映射器。您可以匿名绑定到远程计算机上的该端口,并枚举该计算机上可用的所有服务(端点),或者,如果您知道要查找的内容,则可以请求运行特定服务的端口。
让我向您展示一个查询RPC Enpoint Mapper的示例:
C:\>PortQry.exe -n 192.168.1.1 -e 135
Querying target system called:
192.168.1.1
Attempting to resolve IP address to a name...
IP address resolved to host01.labs.myotherpcisacloud.com
querying...
TCP port 135 (epmap service): LISTENING
Using ephemeral source port
Querying Endpoint Mapper Database...
Server's response:
UUID: d95afe70-a6d5-4259-822e-2c84da1ddb0d
ncacn_ip_tcp:192.168.1.1[49152]
UUID: 12345778-1234-abcd-ef00-0123456789ac
ncacn_np:192.168.1.1[\\pipe\\lsass]
UUID: 12345778-1234-abcd-ef00-0123456789ac
ncacn_ip_tcp:192.168.1.1[49159]
UUID: 6b5bdd1e-528c-422c-af8c-a4079be4fe48 Remote Fw APIs
ncacn_ip_tcp:192.168.1.1[49158]
UUID: 367abb81-9844-35f1-ad32-98f038001003
ncacn_ip_tcp:192.168.1.1[49157]
UUID: 12345678-1234-abcd-ef00-0123456789ab
ncacn_ip_tcp:192.168.1.1[49155]
UUID: 0b6edbfa-4a24-4fc6-8a23-942b1eca65d1
ncacn_ip_tcp:192.168.1.1[49155]
UUID: ae33069b-a2a8-46ee-a235-ddfd339be281
ncacn_ip_tcp:192.168.1.1[49155]
UUID: 4a452661-8290-4b36-8fbe-7f4093a94978
ncacn_ip_tcp:192.168.1.1[49155]
UUID: 76f03f96-cdfd-44fc-a22c-64950a001209
ncacn_ip_tcp:192.168.1.1[49155]
UUID: 7f1343fe-50a9-4927-a778-0c5859517bac DfsDs service
ncacn_np:192.168.1.1[\\PIPE\\wkssvc]
UUID: 3473dd4d-2e88-4006-9cba-22570909dd10 WinHttp Auto-Proxy Service
ncacn_np:192.168.1.1[\\PIPE\\W32TIME_ALT]
UUID: 1ff70682-0a51-30e8-076d-740be8cee98b
ncacn_np:192.168.1.1[\\PIPE\\atsvc]
...
Total endpoints found: 50
==== End of RPC Endpoint Mapper query response ====
您会注意到,如果在本地计算机上执行该查询,则与从远程计算机上执行查询相比,将找到更多的终结点。这是因为许多RPC端点不是远程公开的,而仅用于本地进程间通信。
进一步阅读:http : //technet.microsoft.com/zh-cn/library/cc738291(v=WS.10).aspx
还有:https : //www.myotherpcisacloud.com/post/2014/02/16/verifying-rpc-network-connectivity-like-a-boss.aspx