我有一个工作站(PC1
),它无法通过 RPC(TCP/135)与域控制器通信。
C:\PortQryV2> portqry.exe -n 192.168.1.1 -p tcp -o 135
Querying target system called:
192.168.1.1
Attempting to resolve IP address to a name...
IP address resolved to dc.domain.local
querying...
TCP port 135 <epmap service>: FILTERED
PC2
在同一子网和 VLAN 中的另一个工作站()上执行相同的命令,将LISTENING
显示该服务器的所有 RPC 端点。
C:\>netsh int ipv4 show dynamicport tcp
Protocol tcp Dynamic Port Range
---------------------------------
Start Port : 49152
Number of Ports : 16384
PC1
和上的动态端口范围相同PC2
。
PC1
和都PC2
运行Windows 7 Enterprise SP1。
McAfee Host Inception Prevention (HIPS) 软件曾安装在 上,PC1
但在故障排除过程中被删除。它仍安装在 上PC2
。PC1
和都PC2
使用相同的 HIPS 策略。
Windows 防火墙当前已禁用PC1
。
C:\>netsh advfirewall show allprofiles
Domain Profile Settings:
----------------------------------------------------------------------
State OFF
Firewall Policy AllowInbound,AllowOutbound
LocalFirewallRules N/A (GPO-store only)
LocalConSecRules N/A (GPO-store only)
InboundUserNotification Enable
RemoteManagement Disable
UnicastResponseToMulticast Enable
Logging:
LogAllowedConnections Disable
LogDroppedConnections Disable
FileName %systemroot%\system32\LogFiles\Firewall\pfirewall.log
MaxFileSize 4096
Private Profile Settings:
----------------------------------------------------------------------
State OFF
Firewall Policy AllowInbound,AllowOutbound
LocalFirewallRules N/A (GPO-store only)
LocalConSecRules N/A (GPO-store only)
InboundUserNotification Enable
RemoteManagement Disable
UnicastResponseToMulticast Enable
Logging:
LogAllowedConnections Disable
LogDroppedConnections Disable
FileName %systemroot%\system32\LogFiles\Firewall\pfirewall.log
MaxFileSize 4096
Public Profile Settings:
----------------------------------------------------------------------
State OFF
Firewall Policy AllowInbound,AllowOutbound
LocalFirewallRules N/A (GPO-store only)
LocalConSecRules N/A (GPO-store only)
InboundUserNotification Enable
RemoteManagement Disable
UnicastResponseToMulticast Enable
Logging:
LogAllowedConnections Disable
LogDroppedConnections Disable
FileName %systemroot%\system32\LogFiles\Firewall\pfirewall.log
MaxFileSize 4096
Ok.
我使用 Wireshark 捕获了 RPC 连接portqry.exe
,发现TCP SYN
DPU 已发送,但ACK
从未收到。TCP SYN 又发送了两次,在 Wireshark 中显示为[TCP Retransmission]
。后来,我使用 Wireshark 在域控制器上捕获了相同的 RPC 通信。我看到了传入消息TCP SYN
,但没有看到SYN ACK
回复。就好像域控制器任意忽略了此端口上的这台计算机。请注意,从 查询 Kerberos (UDP/88) 工作正常PC1
。
我还尝试重建 TCP/IP 堆栈PC1
,但是无济于事。
有什么想法可能阻碍这种沟通?
答案1
经过大量的故障排除,我能够确定启用了 Windows 防火墙规则,该规则只允许来自PC1
外部的连接TCP/135
,TCP/1027
并且该连接是安全的。在高级安全 Windows 防火墙->入境规则,我进入了可疑规则属性。在“常规”选项卡上的“操作”下,如果连接安全,则允许连接已选中。在自定义屏幕上,如果连接经过身份验证且完整性受到保护,则允许连接被突出显示。该项目的描述如下:
Allow only connections that are both authenticated and integrity-protected
by using IPsec. Compatible with Windows Vista and later.
这条规则是通过域上的组策略以某种方式建立的。很可能是管理员创建了这条规则;但是,PC1
如果使用域管理员帐户安装需要此通信的软件,则该软件可能已经创建了该规则。