2010-03-29 18:35:17 +0000 2010-03-29 18:35:17 +0000
46
46

为什么 "系统 "进程在443端口监听?

我在启动Apache服务器时遇到了问题,因为443端口已经被使用了。

原来,系统进程(PID 4)使用的是443端口。我没有安装IIS,services.msc显示(可以预见)没有运行Exchange服务器,也没有WWW-Services,也没有IIS。我不知道如何找出使用该端口的服务,只能一个接一个地禁用每个服务,我甚至不确定这是否有帮助。

如果有人能指点我如何找回我的SSL端口,我将感激不尽,谢谢你:)

P.S.: 当然,"把Apache切换到另一个SSL端口就可以解决无法启动Apache的问题。但我还是想知道是什么原因如此执着地霸占443端口:)


我现在采取了 “硬路线",一个接一个地禁用服务。结果发现 "Routing and RAS "服务是罪魁祸首。

感谢大家提供的宝贵意见,以及在对抗 "我的系统现在在做什么?"方面的新工具。

答案 (17)

32
32
32
2010-03-29 18:40:13 +0000

我打赌是Skype。如果你安装了Skype,请取消勾选下面的复选框。

18
18
18
2010-03-29 18:41:24 +0000

在高位命令提示符下运行以下内容。

netstat -ab
14
14
14
2017-09-08 00:02:56 +0000

首先,我将直接回答这个问题,任何读到这里的人都可以忽略任何谈论第三方、非微软应用程序使用系统进程的答案。

1.系统进程在每个现代Windows系统中都被列为PID 4。它是用于内核模式的访问。这就排除了大多数第三方网络产品,如Apache。

  1. 自从WinRM(Windows远程管理)诞生以来,HTTP服务(%SystemRoot%\system32\drivers\http.sys)一直是Windows(Vista及以后版本/Server 2008及以后版本)的标准配置。http.sys运行在系统进程(PID 4)下。

  2. 其他微软开发的软件也可能在系统进程下使用%SystemRoot%/system32/drivers/http.sys,如IISSQL Reporting ServicesMicrosoft Web Deployment Service http://support.microsoft.com/kb/2597817 )。

  3. WinRM 1.0默认端口为
    HTTP = 80 HTTPS = 443 WinRM 2.0及更高版本的默认端口为。
    HTTP = 5985 HTTPS = 5986 用以下命令检查。
    Winrm enumerate winrm/config/listener Winrm get http://schemas.microsoft.com/wbem/wsman/1/config

故障排除步骤。

获取你要找的端口的进程号(本例中为443):

…从Windows的非映射驱动器中获取,以避免 “访问被拒绝"。
netstat -aon | find ”:443" System进程的输出应该是这样的:
C:>netstat -ano |find “:443” TCP 0.0.0.0:443 0.0.0.0:0 LISTENING 4 TCP [::]:443 [::]:0 LISTENING 4 最后一列是PID(4)。

1.运行tasklist来了解进程中正在运行的内容,事实证明是没有帮助的。
tasklist /SVC /FI “PID eq 4” tasklist /m /FI “PID eq 4”

  1. 在注册表中查找HTTP服务。HKEY/LOCAL/MACHINE/SYSTEM/CurrentControlSet/services/HTTP/Parameters/UrlAclInfo 在注册表中会有一个URLs的列表(包括端口号),它可以让你知道哪个应用程序正在运行,并拥有哪些端口。
    http:// +:5985/wsman/ –/> WinRM https:// +:5986/wsman/ –/> WinRM http:// +:80/Reports/ –/> SQL Reporting Server http:// +: 80/ReportServer/ –> SQL Reporting Server https:// server/fqdn:443/Reports/ –> SQL Reporting Server https:// server/fqdn:443/ReportsServer/ –> SQL Reporting Server http:// /* 。 2869/ –> Simple Service Discovery Protocol service (SSDPSRV) http:///* :5357/ –> Web Services Dynamic Discovery (WS-Discovery) https:///* 。 5358/ –/> Web服务动态发现(WS-Discovery)

然后你可以在系统上找到相应的服务并停止它,通过另一个netstat -aon | find “:443”命令确认,看看想要的端口是否被释放。

11
11
11
2014-03-13 17:45:42 +0000

我的Windows 7机器上的PID为4的 “系统 "使用了443端口。我的解决办法是删除网络连接文件夹中存在的 "传入连接"(VPN)。

看来是我创建的,使用后忘记删除了……

7
7
7
2012-10-05 20:57:27 +0000

通常这是VMware主机代理服务(虚拟机与主机之间的通信所需)–vmware-hostd.exe

找出正在运行的子进程svchost.exe的好方法是使用Sysinternals的 Process Explorer

6
6
6
2013-11-11 19:56:01 +0000

我在路由443请求到我的WAS服务器时也面临类似的问题。根据这个问题中的建议,我是这样做的。

1.从高位cmd提示符运行netstat -a -n -o | findstr 443 2. 识别出监听443的进程的PID 3. 使用进程资源管理器从PID识别进程。 4. 在我的案例中,应用程序监听的是vmwarehostd.exe 5. 停止VMware Workstation服务器,从services.msc。由WAS服务器重新启动。

然后所有的443请求都到了443快乐地完成了。

PS:我已经卸载了Windows 8安装时内置的skype。在我的机器上,路由和远程访问服务被禁用。

4
4
4
2016-02-09 11:35:33 +0000

如果是服务启动的进程,netstat -ab没有用。

在这种情况下,请在管理员命令行中尝试netstat -ao | find /i "443"。这会给你一个类似这样的输出。

TCP 0.0.0.0:443 your_hostname:0 LISTENING PID

然后在另一个管理员命令行输入tasklist | find /i "<PID>"

在我的情况下,PID是2912,我的命令是:

tasklist | find /i "2912"

我的命令输出是:

vmware-hostd.exe 2912 Services 0 39 856 K

哇,我甚至忘记了我安装VMware是为了检查一个功能……。

1
1
1
2011-02-18 20:46:53 +0000

在我的情况下,它是来自F5 Networks的DataManager,它在内部使用Tomcat 6来服务其网页。我忘了卸载那个应用程序。如果你问我,这是个糟糕的设计决定。

1
1
1
2010-10-04 12:38:54 +0000

在我的情况下,是DTC(分布式事务协调员)进程使用443端口。特别是,我在DTC中激活了WS-AT,它使用了443端口。

一般来说,我的理解是,当系统进程(PID 4)使用443/HTTPS端口时,它是Windows的内部进程(在我的例子中是DTC,但我认为也可以是其他进程),如果不是IIS网站使用它的话。

1
1
1
2016-05-19 19:12:23 +0000

使用netstat -ao | find ":443",我发现端口443正在被PID 4使用,也就是系统进程。这种情况在Windows Server 2012上我发生了两次,是由于以下原因之一。

1.IIS正在运行,在 “服务 "中被列为 "万维网发布服务",我停止了它。 2. 安装了 "工作文件夹 "功能,我就把它卸载了。

这可能不是每个人都能解决的问题,但可能对一些人有帮助。

0
0
0
2013-04-23 20:38:42 +0000

我发现在Windows 8中使用VPN功能(可能Windows 7也一样)使用了443端口。

另外,我的端口又被PMB.exe(Pando Media Booster)关闭了。

0
0
0
2018-04-19 13:49:36 +0000

对我来说,在Windows Server 2016更新后,Apache 443无法启动,并列出了通常的事件。

我发现罪魁祸首是 “Windows同步共享 "服务(SyncShareSvc)。我禁用了,并且能够启动Apache。

0
0
0
2014-05-14 11:37:14 +0000

对我来说,是McAfee EPO代理在80端口监听。我不得不通过几个痛苦的圈圈来改变它。 https://kc.mcafee.com/corporate/index?page=content&id=KB67605

0
0
0
2020-01-23 14:32:45 +0000

在我的Windows Server 2019上,我通过运行这个PS解决了它。

Stop-Service -Name KPSSVC

它作为网络服务权限下的进程4(系统进程)运行。运行

netstat -ab

并没有帮助。它显示 “无法获取所有权信息"。

停止服务后,netstat -aon | findstr ”:443 “不再显示条目。通过逐一停止各服务,发现了问题。

KDC 代理服务器服务 (KPS) - KDC 代理服务器服务运行在边缘服务器上,用于代理 Kerberos 协议消息到企业网络上的域控制器。

-1
-1
-1
2010-03-29 18:44:25 +0000

Wireshark会告诉你细节。 http://www.wireshark.org/ 或者TCP Monitor。 http://www.itsamples.com/tcp-monitor.html

这样就可以了。

-1
-1
-1
2011-09-29 08:20:02 +0000

如果你有某种虚拟局域网驱动(如OpenVM、VMware等)–确保你在把端口给其他东西之前 “释放 "它…

只是一个简单的提示;)

-2
-2
-2
2013-11-19 17:02:47 +0000

我在尝试安装VMware更新时也遇到了同样的麻烦。我把它追踪到了Skype。新客户端默认为443。