Dieser TechNet-Artikel ist fantastisch . Ich empfehle Ihnen, ihn mit einem Lesezeichen zu versehen. Es listet die von verschiedenen Windows-Diensten verwendeten Ports auf und ist recht gründlich.
In früheren Windows-Versionen als Vista / 2008 wurde NetBIOS für den Dienst "RPC Locator" verwendet, der die RPC-Namensdienstdatenbank verwaltete. In Vista / 2008 und darüber hinaus ist der RPC Locator-Dienst jedoch nicht mehr erforderlich oder nützlich. Es ist ein Überbleibsel. Ab diesem Zeitpunkt werde ich nur noch über MSRPC unter Vista / 2008 + sprechen.
Die Ports 137, 138 und 139 sind für NetBIOS und für die Funktionalität von MSRPC nicht erforderlich.
Alle von RPC verwendeten Ports sind wie folgt:
RPC EPM TCP 135
RPC over HTTPS TCP 593
SMB (for named pipes) TCP 445
Ephemeral Range, Dynamic *
Andere Anwendungen, wie z. B. Remotedesktop-Gateway, verwenden RPC über HTTP-Proxy und verwenden Port 443 usw.
Obwohl der Artikel, auf den ich oben verlinkt habe, die NetBIOS-Ports auflistet, sind diese Legacy-Ports und für RPC nicht erforderlich, vorausgesetzt, Sie können die Namensauflösung auf andere Weise (DNS) erreichen und der Remotedienst selbst ist nicht von NetBIOS abhängig.
Port 145 ist falsch. Es wird für nichts verwendet. Wo immer Sie gehört haben, dass es "die Dinge besser macht", ist falsch.
Basic MSRPC verwendet die Ports 135 und den hoch nummerierten Dynamikbereich. Dieser hoch nummerierte Dynamikbereich umfasst die Ports 1024-5000 unter XP / 2003 und darunter sowie 49152-65535 unter Vista / 2008 und höher. Sie können diesen Portbereich auch als kurzlebige Ports bezeichnen.
Sie können einen benutzerdefinierten Portbereich definieren, wenn Sie dies wünschen:
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
Und / oder
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
Der TCP-Port 135 ist der MSRPC-Endpunkt-Mapper. Sie können anonym an diesen Port eines Remotecomputers binden und entweder alle auf diesem Computer verfügbaren Dienste (Endpunkte) auflisten oder anfordern, auf welchem Port ein bestimmter Dienst ausgeführt wird, wenn Sie wissen, wonach Sie suchen.
Lassen Sie mich Ihnen ein Beispiel für die Abfrage des RPC Enpoint Mapper zeigen:
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 ====
Sie werden feststellen, dass Sie, wenn Sie diese Abfrage auf dem lokalen Computer ausführen, viel mehr Endpunkte finden, als wenn Sie die Abfrage von einem Remotecomputer aus ausführen. Dies liegt daran, dass viele RPC-Endpunkte nicht remote verfügbar gemacht werden und nur für die lokale Interprozesskommunikation verwendet werden.
Lesen Sie weiter: http://technet.microsoft.com/en-us/library/cc738291(v=WS.10).aspx
Und außerdem: https://www.myotherpcisacloud.com/post/2014/02/16/verifying-rpc-network-connectivity-like-a-boss.aspx