Tại sao quá trình 'Hệ thống' lắng nghe trên cổng 443?


45

Tôi gặp sự cố khi khởi động máy chủ Apache của mình, vì cổng 443 đã được sử dụng.

Hóa ra, quy trình hệ thống (PID 4) sử dụng cổng 443. Tôi chưa cài đặt IIS, các chương trình services.msc (dự đoán) không có máy chủ Exchange đang chạy, cũng không phải WWW-Services, hay IIS. Tôi không biết làm thế nào để tìm ra dịch vụ nào sử dụng cổng đó, chỉ đơn giản là vô hiệu hóa từng dịch vụ này và tôi thậm chí không chắc điều đó sẽ giúp ích.

Tôi sẽ rất biết ơn nếu ai đó có thể chỉ cho tôi cách tôi có thể lấy lại cổng SSL, cảm ơn bạn :)

PS: Tất nhiên "chỉ cần chuyển Apache sang cổng khác cho SSL" sẽ giải quyết vấn đề không thể khởi động Apache. Nhưng tôi vẫn muốn biết những gì rất khăng khăng về việc ăn cắp cổng 443. :)


Bây giờ tôi đã chọn "tuyến đường cứng" và các dịch vụ bị vô hiệu hóa lần lượt. Hóa ra dịch vụ "Định tuyến và RAS" là thủ phạm.

Cảm ơn tất cả các bạn về đầu vào có giá trị và các công cụ mới trong cuộc chiến chống lại "WTF hệ thống của tôi có làm gì bây giờ không?".


Liên quan: superuser.com/questions/121901 Bạn có thể sử dụng bất kỳ câu trả lời nào được đưa ra để giúp bạn xác định dịch vụ nào đang mở cổng 443.
heavyyd

1
Thật không may, vì tôi không thể (hoặc quá ngu ngốc) để tìm ra dịch vụ nào chính xác giữ cổng mở, tôi không thể sử dụng "SC Config Servicename Type = own" cho độ trễ của Servicename. Câu thần chú khác nhau của Netstat chỉ cho tôi quá trình Hệ thống, như đã nói, giống như TCPView đã làm. "Ngăn xếp", như đối với PE, rõ ràng không hoạt động trên Win7 và vì tôi không nhìn vào một ví dụ svchost.exe, tôi không có cột "Dịch vụ" trên tab TCP / IP. Skype không có lỗi, tôi cũng không có phần mềm VoIP hay P2P nào khác đang chạy. Nhưng câu hỏi khác mà bạn liên kết là khai sáng cho tôi; cảm ơn bạn.
Cornelius

Cảm ơn bạn về thông tin! Đối với tôi, đó là dịch vụ "Định tuyến và truy cập từ xa" cũng đã ràng buộc cổng 443.
Codler

3
Man, số lượng câu trả lời thậm chí không cố gắng trả lời câu hỏi là không thể tin được. Vậy là số lượng thông tin sai lệch. Nếu PID 4 đang lắng nghe, thì đó là http.sys. Luôn luôn. May mắn thay, đã có một câu trả lời về làm thế nào để có được cái nhìn sâu sắc .
Daniel B

Câu trả lời:


18

Chạy phần sau từ dấu nhắc lệnh nâng cao:

netstat -ab

Tôi hơi ngạc nhiên. Bất cứ điều gì khác chỉ cho thấy "quá trình hệ thống" là thủ phạm. Lệnh này bây giờ tuyên bố rằng nó - đây là một svchost.exe giữ cổng này. : | Làm thế nào mà các cuộc gọi netstat PE / 'khác' được thực hiện theo quy trình Hệ thống? (Mặc dù cổng vẫn được hiển thị như được giữ bởi PID 4 / Hệ thống.) Làm cách nào tôi có thể kiểm tra thêm? :(
Cornelius

không chắc nhưng chạy PE có thể tăng!
tonyr roth

2
Ngoài ra, những điều sau đây có thể cung cấp cho bạn thông tin chi tiết hơn về quy trình wmic> test.txt
tonyr roth

1
Tôi đã chạy process explorer với tư cách quản trị viên - và cổng vẫn hiển thị như được tuyên bố bởi "System"; không thực sự nhiều intel có sẵn ở đó: | Đến bây giờ tôi nghĩ nó sẽ là thứ gì đó thực sự ngu ngốc mà tôi đã vô tình làm;)
Cornelius

4
Điều này không hiệu quả với tôi, theo dòng với 0.0.0.0:443 Tôi chỉ nhận được Không thể có được thông tin sở hữu .
MGOwen

33

Tôi cá là Skype. Bỏ chọn hộp kiểm hiển thị bên dưới nếu bạn đã cài đặt nó.

Văn bản thay thế


3
+1. Các máy khách VoIP khác (và các phần mềm khác như ứng dụng chuyển tập tin P2P) sẽ lắng nghe trên các cổng 80 và 443 nếu chúng không tìm thấy gì khác ở đó, mặc dù Skype là "kẻ phạm tội" phổ biến nhất. Tôi không chắc tại sao Skype sẽ hiển thị như một quy trình thuộc sở hữu hệ thống.
David Spillett

Thật không may, nó không phải là Skype; cũng không khách hàng VoIP khác (không cài đặt) hay P2P vv vv Tôi đã kiểm tra đó và nó không phải là chỉ "một hệ thống sở hữu quá trình", đó là "quá trình hệ thống" (PID 4)
Cornelius

Điều kỳ lạ là tôi gặp vấn đề tương tự như OP - 443 đã được đưa ra bởi svchost .. và tuy nhiên, tắt Skype đã sửa nó.
Blorgbeard

Có vấn đề này. Thực hiện theo các hướng dẫn này và tìm ra nó là Skype: mydigitallife.info/ từ
saturdayplace

Nói rõ hơn: Nếu cổng của bạn được giữ bởi svchost và hiển thị rõ ràng trong Process Explorer, thì đó không phải là vấn đề tương tự tôi gặp phải. Do đó, tôi khăng khăng nói rõ rằng quy trình có tên "Hệ thống" dường như sở hữu cổng.
Cornelius

12

Tôi gặp vấn đề là cổng 443 đã được "hệ thống" sử dụng với PID 4 trên máy Windows 7 của tôi. Giải pháp cho tôi là xóa một "Kết nối đến" (VPN) tồn tại trong thư mục kết nối mạng.

Có vẻ như tôi đã tạo ra nó và quên xóa nó sau khi sử dụng ...


1
Đúng, có vấn đề tương tự trên Windows 8.1.
Konstantin Pereiaslov

chỉ cần làm điều đó7. Nó đã ngừng nghe trên TCP 443 mặc dù vẫn nghe trên cổng UDP 443 mặc dù điều đó có thể đủ tốt.
barlop

1
Tôi gặp vấn đề này trên Windows Server 2008 R2 x64. Mất một lúc tôi mới tìm thấy bài viết của bạn và tôi ngạc nhiên với câu trả lời chính thức cho câu hỏi này, vì nó thực sự không trả lời câu hỏi nào cả. Cảm ơn bạn!
simontemplar

Nó hoạt động với tôi khi thay vì xóa "Kết nối đến" (Tôi không nhớ cách tạo lại nếu tôi cần lại) Tôi đã bỏ chọn [_] Allow other computers to connect to this onetrong Trung tâm chia sẻ và mạng, Cấu hình bộ điều hợp, Kết nối đến, Thuộc tính.
Alexander Gelbukh

11

Trước hết, tôi sẽ trả lời trực tiếp câu hỏi này và bất kỳ ai đang đọc câu hỏi này đều có thể bỏ qua mọi câu trả lời nói về các ứng dụng không phải của Microsoft bên thứ 3 sử dụng Quy trình hệ thống.

  1. Các hệ thống xử lý được liệt kê như PID 4 trên tất cả các hệ thống Windows hiện đại ngày nay. Nó là để truy cập chế độ kernel. Điều này loại trừ hầu hết các sản phẩm web của bên thứ 3 như Apache.

  2. Kể từ khi bắt đầu WinRM (Quản lý từ xa Windows), dịch vụ HTTP ( % SystemRoot% \ system32 \ driver \ http.sys ) đã trở thành một phần tiêu chuẩn của Windows (Vista trở lên / Server 2008 trở lên). http.sys chạy theo quy trình Hệ thống ( PID 4 ).

  3. Các phần mềm khác do Microsoft phát triển cũng có thể sử dụng% SystemRoot% \ system32 \ driver \ http.sys trong quy trình Hệ thống như IIS , Dịch vụ báo cáo SQLDịch vụ triển khai web của Microsoft ( http://support.microsoft.com/kb/2597817 ) ...

  4. Các cổng mặc định của WinRM 1.0 là:
    HTTP = 80
    HTTPS = 443
    WinRM 2.0 và các cổng mặc định lớn hơn là:
    HTTP = 5985
    HTTPS = 5986
    Kiểm tra bằng các lệnh sau:
    Winrm liệt kê winrm / config / listener
    Winrm get http://schemas.microsoft.com / wbem / wsman / 1 / config

Các bước khắc phục sự cố:

Lấy số quy trình của cổng mà bạn đang tìm kiếm (443 trong trường hợp này):

... từ một ổ đĩa không được ánh xạ của Windows để tránh "Truy cập bị từ chối":
netstat -aon | find ": 443"
Đầu ra sẽ giống như sau đối với quy trình Hệ thống :
C:> netstat -ano | find ": 443"
TCP 0.0.0.0:443 0.0.0.0 0 LISTENING 4
TCP [::]: 443 [: :]: 0 NGHE 4
Cột cuối cùng là PID (4).

  1. Chạy danh sách tác vụ để tìm hiểu những gì đang chạy trong quy trình chứng tỏ không có ích:
    danh sách tác vụ / SVC / FI "PID eq 4"
    danh sách tác vụ / m / FI "PID eq 4"

  2. Hãy tìm trong sổ đăng ký dịch vụ HTTP: HKEY_LOCAL_MACHINE \ HỆ THỐNG \ CurrentControlset \ services \ HTTP \ Paramameter \ UrlAclInfo
    Sẽ có một danh sách các URL (có số cổng) có thể dẫn bạn đến ứng dụng nào đang chạy và giữ cổng nào:
    http : // +: 5985 / wsman / -> WinRM
    https: // +: 5986 / wsman / -> WinRM
    http: // +: 80 / Báo cáo / -> Máy chủ báo cáo SQL
    http: // +: 80 / Máy chủ báo cáo / -> Máy chủ báo cáo SQL
    https: // server_fqdn: 443 / Báo cáo / -> Máy chủ báo cáo SQL
    https: // server_fqdn: 443 / Máy chủ báo cáo / -> Máy chủ báo cáo SQL
    http: // *: 2869 / - -> Dịch vụ Giao thức Khám phá Dịch vụ Đơn giản (SSDPSRV)
    http: // *: 5357 / ->Khám phá động dịch vụ web (WS-Discovery)
    https: // *: 5358 / -> Khám phá động dịch vụ web (WS-Discovery)

Sau đó, bạn có thể tìm thấy dịch vụ tương ứng trên hệ thống và dừng nó và xem cổng mong muốn được phát hành bằng cách xác nhận với một netstat khác -aon | tìm lệnh ": 443" .


Về điểm 6, làm thế nào để chúng ta tìm thấy quá trình lắng nghe cho các cổng đó?
galmok

8

Thường thì đây là dịch vụ đại lý máy chủ VMware (cần thiết cho giao tiếp VM-host-to-guest) - vmware-hostd.exe.

Một cách tốt để tìm hiểu quy trình phụ mà Svchost.exe đang chạy là sử dụng Trình khám phá quy trình của Sysiternals .


2
Nếu bạn thực sự đã cài đặt VMware Workstation, hãy kiểm tra trong phần Chỉnh sửa -> Tùy chọn -> Máy ảo được chia sẻ. Bạn có thể bật tính năng chia sẻ VM và cổng mặc định là 443. Bạn có thể tắt chia sẻ, thay đổi cổng và bật lại hoặc chỉ tắt nó nếu bạn không cần.
gronostaj

@gronostaj Cảm ơn bạn rất nhiều, tôi chỉ mất 3 giờ để tìm kiếm thứ này :(
Simon Kirsten

7

Tôi gặp vấn đề tương tự với việc định tuyến 443 yêu cầu đến máy chủ WAS của tôi. Dựa trên các khuyến nghị trong câu hỏi này, đây là những gì tôi đã làm:

  1. Từ dấu nhắc cmd nâng cao chạy netstat -a -n -o | findstr 443
  2. Xác định PID của quá trình lắng nghe trên 443
  3. Đã sử dụng Process Explorer để xác định quy trình từ PID.
  4. Trong trường hợp của tôi, ứng dụng nghe là vmwarehostd.exe
  5. Đã dừng máy chủ VMware Workstation từ services.msc. Khởi động lại bởi máy chủ WAS.

Và tất cả 443 yêu cầu đã đến 443 hạnh phúc mãi mãi về sau.

PS: Tôi đã gỡ cài đặt skype đi kèm với cài đặt Windows 8 của tôi. Dịch vụ định tuyến và truy cập từ xa đã bị vô hiệu hóa trong máy của tôi.


3
-1 Của anh ấy là PID 4 thì khó hơn nhiều. Bạn viết "Sử dụng trình thám hiểm quy trình để xác định quá trình từ pid." <- Bản thân bạn không phải là PID 4, ví dụ như Svchost hoặc đại loại như thế. Bạn là một bên thứ 3 exe. Bạn có thể vừa sử dụng trình quản lý tác vụ! Nếu bạn chưa hiển thị cột rồi thì xem..chọn cột Nhưng bạn thật may mắn vì PID của bạn không phải là PID 4. Tôi không biết liệu trình thám hiểm quy trình có thể giúp được không mặc dù trình quản lý tác vụ không thể. Nhưng chắc chắn trong trường hợp của bạn, trình quản lý tác vụ đơn giản sẽ thực hiện nó.
barlop

5

Nếu đó là một quá trình được bắt đầu bởi một dịch vụ, netstat -absẽ không giúp đỡ.

Trong trường hợp này hãy thử netstat -ao | find /i "443"trong một dòng lệnh quản trị viên. Điều này sẽ cung cấp cho bạn một đầu ra như thế này:

    TCP   0.0.0.0:443   your_hostname:0   LISTENING   PID

Sau đó nhập tasklist | find /i "<PID>"một dấu nhắc lệnh quản trị viên khác.

Trong trường hợp của tôi, PID là 2912 và lệnh của tôi là:

tasklist | find /i "2912"

Đầu ra của lệnh của tôi là:

vmware-hostd.exe   2912 Services   0   39 856 K

Ồ, tôi thậm chí đã quên rằng tôi đã cài đặt VMware để kiểm tra chức năng ...


1
Đối với tôi đây là PID 4 ... là Hệ thống. Vẫn không có manh mối :)
Wouter

PID 4 thường có nghĩa là một dịch vụ Windows gốc của Microsoft, có nghĩa là cấp độ kernel. Hãy thử dừng từng dịch vụ một và kiểm tra xem nó có giải quyết được vấn đề không. Vô hiệu hóa dịch vụ / gỡ cài đặt tính năng mà @Wouter gây ra sự cố. Dịch vụ thông thường là: Routing and RAS, bất cứ điều gì lưu ý IIShay World Wide Puplishing, Exchange Windows Sync Share, Web Deployment Agent Service, SQL Server Reporting Services, File Server Storage Reports Managervà tương tự.
elbedoit

1

Trong trường hợp của tôi, đó là DataManager từ F5 Networks sử dụng Tomcat 6 bên trong để phục vụ các trang web của nó. Tôi quên cài đặt ứng dụng đó. Quyết định thiết kế tồi, nếu bạn hỏi tôi.


1

Khi sử dụng netstat -ao | find ":443", tôi phát hiện ra rằng cổng 443 đang được sử dụng bởi PID 4, đó là quy trình Hệ thống. Điều này đã xảy ra với tôi hai lần trên Windows Server 2012 và đó là do một trong những lý do sau:

  1. IIS đang chạy, được liệt kê là "Dịch vụ xuất bản web toàn cầu" trong Dịch vụ mà tôi đã dừng.
  2. Tính năng Work Folders được cài đặt, vì vậy tôi đã gỡ cài đặt nó.

Đây có thể không phải là một giải pháp cho tất cả mọi người, nhưng nó có thể giúp một số người.


Câu trả lời này không thực sự thêm bất kỳ thông tin mới nào chưa có trong các câu trả lời được gửi bởi elbedoit hoặc tonyr
Ramhound

1
Tôi đặc biệt thêm câu trả lời này vì việc gỡ cài đặt tính năng Work Folders hoạt động với tôi và do đó, đây là một giải pháp tiềm năng cho vấn đề như đã viết. Tôi có nên trình bày thông tin này trong một bình luận thay thế?
anishpatel

1
Tôi đã có cùng một vấn đề như đã nêu trong câu hỏi và câu trả lời của tonyr không có tác dụng với tôi. Câu trả lời của elbedoit không giúp ích gì khi bạn có PID 4 (như đã nêu trong câu hỏi); bạn sẽ dừng ngẫu nhiên / khởi động lại các quy trình hệ thống để khắc phục sự cố?
anishpatel

1
Không có câu trả lời nào khác đề cập đến việc gỡ cài đặt tính năng Work Folders, đây là một giải pháp cho câu hỏi. Tôi đã lặp lại thông tin từ (các) câu trả lời khác để giúp những người khác có cùng vấn đề xác định xem giải pháp này có thể phù hợp với họ hay không (nghĩa là kiểm tra để chắc chắn rằng PID là 4). Nếu PID không phải là 4, câu trả lời này chắc chắn sẽ không có ích. Làm thế nào là câu trả lời này không đầy đủ hơn sau đó câu trả lời của doener hoặc tonyr? Xin đề nghị làm thế nào tôi có thể giao tiếp giải pháp của tôi tốt hơn.
anishpatel

1
Đúng! Đó cũng là tính năng Work Folders đối với tôi! Cảm ơn rất nhiều vì đã đề cập đến điều này. Đây thực sự là một câu trả lời hợp lệ như đề cập đến Skype hoặc bất kỳ dịch vụ nào khác ...
Wouter

1

Trong trường hợp của tôi, đó là quy trình DTC (Điều phối giao dịch phân tán) để sử dụng cổng 443. Cụ thể, tôi đã kích hoạt WS-AT trong DTC và nó đang sử dụng cổng 443.

Nói chung, tôi hiểu rằng khi quy trình Hệ thống (PID 4) sử dụng cổng 443 / HTTPS, đó là một quy trình nội bộ của Windows (trong trường hợp của tôi là DTC, nhưng tôi nghĩ cũng có thể là một quy trình khác), nếu đó không phải là trang web IIS sử dụng nó.



0

Đối với tôi, sau bản cập nhật Windows Server 2016, Apache 443 không thể bắt đầu với sự kiện thông thường được liệt kê.

Tôi tìm thấy thủ phạm là Dịch vụ "Chia sẻ đồng bộ hóa Windows" (SyncShareSvc). Tôi đã vô hiệu hóa và có thể bắt đầu Apache.


0

Tôi thấy rằng sử dụng chức năng VPN trong Windows 8 (có thể giống với Windows 7) đã sử dụng cổng 443.

Ngoài ra, cổng của tôi đóng lại một lần nữa bởi PMB.exe (Pando Media Booster).


-1

Wireshark sẽ cho bạn biết chi tiết. http://www.wireshark.org/ Hoặc Trình giám sát TCP: http://www.itsamples.com/tcp-monitor.html

Điều đó sẽ giúp.


Thật không may, màn hình tcp không thực sự giúp tôi chút nào; như đối với wireshark - Tôi không thể tạo / chụp các gói được hướng vào cổng 443. :(
Cornelius

1
Tùy chọn duy nhất còn lại là Process Explorer (sysiternals) nó sẽ hiển thị cho bạn các thao tác với các cổng. Wireshark là một trong những sản phẩm hàng đầu trong dòng này, nhưng tôi không thể hiểu tại sao nó không hiệu quả với bạn: s (Bạn đã cài đặt trình điều khiển chụp WinPCAP chưa?)
adeelx 30/03/2016

Rất muộn, xin lỗi. Nhưng tôi không thể lấy bất cứ thứ gì để đăng nhập vì thông thường không có lưu lượng để đánh hơi. Ít nhất là như vậy tôi đoán.
Cornelius

-1 Wireshark sẽ không hiển thị cho bạn bất cứ điều gì có thể giúp xác định những gì trên cổng .. trừ khi có các gói đi đến cổng Và thậm chí sau đó, bạn nên cung cấp thêm thông tin, ví dụ như người đó nên ping IP và cố gắng tìm hiểu IP đó là gì
barlop

-1

Nếu bạn có một số loại trình điều khiển LAN ảo (như OpenVM, VMware, v.v.) - hãy đảm bảo rằng bạn 'giải phóng' cổng trước khi đưa nó cho một thứ khác ...

Chỉ là một gợi ý phụ nhanh chóng;)


-2

Tôi đã gặp rắc rối tương tự trong khi cố gắng cài đặt bản cập nhật VMware. Tôi đã theo dõi nó xuống Skype. Máy khách mới mặc định là 443.


4
Đây chỉ là một sự lặp lại của một câu trả lời hiện có. Vui lòng upvote câu trả lời hiện có thay vì đăng lại.
Chenmunka

@Chenmunka Có lẽ anh ấy đã không đọc nó
FindOutIslamNow
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.