Hướng Dẫn Hoàn Chỉnh Kiểm Tra Các Cổng Mở trên Windows 2026

Hướng dẫn kiểm tra cổng mở trên Windows bằng lệnh netstat và PowerShell

Kiểm tra các cổng mở trên Windows là điều mà mỗi người dùng có ý thức về mạng nên biết cách thực hiện. Một cổng mở có nghĩa là máy tính của bạn đang chủ động lắng nghe các kết nối trên số cổng đó, và biết cổng nào đang mở giúp bạn phát hiện các lỗ hổng bảo mật, khắc phục sự cố kết nối và xác minh rằng các ứng dụng của bạn đang chạy đúng. Windows cung cấp cho bạn nhiều cách tích hợp sẵn để làm điều này, ngoài ra còn có các công cụ bên ngoài có thể kiểm tra cách các cổng của bạn trông từ bên ngoài.

Cổng Mở Là Gì Và Tại Sao Chúng Quan Trọng

Mỗi dịch vụ mạng trên máy tính của bạn gắn kết với một số cổng từ 1 đến 65535. Khi một dịch vụ đang chạy và chờ các kết nối đến, cổng đó là "mở". Khi không có gì lắng nghe ở đó, cổng là "đóng" và các nỗ lực kết nối đến bị từ chối hoặc bỏ qua.

Dưới đây là lý do tại sao điều này quan trọng trong thực tế:

  • Kiểm toán bảo mật: Một cổng mở không mong muốn có thể có nghĩa là một quy trình rogue, phần mềm độc hại hoặc một dịch vụ cấu hình sai đang để lộ máy của bạn.
  • Khắc phục sự cố: Nếu máy chủ web, máy chủ trò chơi hoặc máy tính để bàn từ xa của bạn không thể truy cập được, câu hỏi đầu tiên là liệu cổng đó có thực sự mở hay không.
  • Xác minh tường lửa: Tường lửa Windows của bạn có thể chặn một cổng ngay cả khi dịch vụ đang chạy, hoặc cho phép một cổng mà bạn nghĩ là đã đóng.
Mẹo: "Mở" và "không bị chặn bởi tường lửa" là hai điều khác nhau. Một cổng có thể mở cục bộ (một dịch vụ đang lắng nghe) nhưng vẫn bị chặn từ bên ngoài bởi tường lửa hoặc bộ định tuyến của bạn. Các phương pháp bên dưới bao gồm cả hai khía cạnh.

Sử Dụng Lệnh Netstat Để Xem Cổng Mở

Lệnh netstat là cách nhanh nhất được tích hợp sẵn để liệt kê mọi cổng mà máy Windows của bạn đang lắng nghe. Mở Command Prompt (tìm "cmd" trong menu Start, nhấp chuột phải và chọn "Run as administrator") và chạy:

netstat -ano

Các cờ được chia nhỏ như sau:

  • -a hiển thị tất cả các kết nối hoạt động và các cổng lắng nghe.
  • -n hiển thị các địa chỉ và số cổng theo số thay vì phân giải tên máy chủ (nhanh hơn nhiều).
  • -o thêm ID Quy Trình (PID) để bạn có thể xác định chương trình nào sở hữu mỗi cổng.

Các cột đầu ra là: Proto , Local Address , Foreign Address , State , và PID . Tìm các hàng nơi cột State nói LISTENING . Đó là các cổng mở của bạn.

Để thu hẹp chỉ các cổng lắng nghe:

netstat -ano | findstr LISTENING

Khi bạn có một PID bạn muốn điều tra, tìm tên quy trình bằng:

tasklist /fi "PID eq 1234"

Thay thế 1234 bằng PID thực tế từ đầu ra netstat. Điều này cho bạn biết chính xác tệp thực thi nào đang lắng nghe trên cổng đó.

Để kiểm tra xem một cổng cụ thể có đang được sử dụng hay không, kết hợp netstat với findstr:

netstat -ano | findstr :443
Lưu Ý: Netstat chỉ hiển thị các cổng TCP và UDP có liên kết hoạt động trên máy cục bộ. Nó không cho bạn biết liệu những cổng đó có thể truy cập được từ internet hay không. Để làm điều đó, bạn cần một trình kiểm tra cổng bên ngoài (được đề cập bên dưới).

Kiểm Tra Cổng Với PowerShell

PowerShell cung cấp cho bạn một giải pháp thay thế sạch hơn, có thể kịch bản được so với netstat. Mở PowerShell dưới quyền quản trị viên và chạy:

Get-NetTCPConnection -State Listen | Select-Object LocalAddress, LocalPort, OwningProcess | Sort-Object LocalPort

Điều này trả về danh sách được sắp xếp của mọi cổng TCP ở trạng thái LISTEN, bao gồm địa chỉ cục bộ và PID. Để phân giải PID thành tên quy trình trong cùng một lệnh:

Get-NetTCPConnection -State Listen |
  Select-Object LocalPort,
    @{Name="Process";Expression={(Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue).Name}} |
  Sort-Object LocalPort

Bạn cũng có thể kiểm tra xem một máy chủ từ xa có một cổng cụ thể mở hay không trực tiếp từ PowerShell bằng cách sử dụng Test-NetConnection :

Test-NetConnection -ComputerName example.com -Port 443

Nếu TcpTestSucceeded : True xuất hiện trong đầu ra, cổng đang mở và chấp nhận kết nối từ máy của bạn. Điều này rất hữu ích để xác minh kết nối đi ra từ PC Windows của bạn đến máy chủ, không chỉ kiểm tra những gì đang mở cục bộ.

Kiểm Tra Cài Đặt Tường Lửa Windows Để Tìm Quy Tắc Cổng

Tường lửa Windows kiểm soát những cổng nào được phép vào và ra. Một dịch vụ có thể lắng nghe trên một cổng cục bộ, nhưng nếu tường lửa chặn lưu lượng đến trên cổng đó, các máy khách bên ngoài không thể truy cập nó. Dưới đây là cách xem xét các quy tắc tường lửa của bạn.

Sử Dụng Windows Defender Firewall Với Bảo Mật Nâng Cao

  1. Nhấn Win + R , gõ wf.msc , và nhấn Enter.
  2. Nhấp Inbound Rules ở bảng điều khiển bên trái để xem các quy tắc kiểm soát lưu lượng đến máy của bạn.
  3. Nhấp Outbound Rules để xem lưu lượng rời khỏi máy của bạn.
  4. Sắp xếp theo Enabled để nhanh chóng xem những quy tắc nào đang hoạt động.
  5. Mỗi quy tắc hiển thị giao thức (TCP/UDP), cổng cục bộ, cổng từ xa và hành động (Allow/Block).

Sử Dụng Dòng Lệnh

Để liệt kê tất cả các quy tắc tường lửa hoạt động từ dòng lệnh:

netsh advfirewall firewall show rule name=all

Để kiểm tra xem một cổng cụ thể có được phép qua tường lửa hay không:

netsh advfirewall firewall show rule name=all | findstr "LocalPort"

Tài liệu chính thức của Microsoft về cấu hình Tường Lửa Windows bao gồm chi tiết về tạo và quản lý quy tắc nếu bạn cần thêm hoặc sửa đổi quy tắc.

Sử Dụng Máy Quét Cổng Trên Windows

Các công cụ tích hợp sẵn rất tốt để kiểm tra máy của riêng bạn, nhưng đôi khi bạn cần quét một máy chủ khác trên mạng của bạn, hoặc bạn muốn có cái nhìn tổng quan trực quan hơn là đầu ra dòng lệnh thô. Một máy quét cổng chuyên dụng lấp đầy khoảng trống đó.

Nmap là tiêu chuẩn ngành để quét cổng. Nó miễn phí, mã nguồn mở và có sẵn cho Windows từ trang tải xuống Nmap chính thức . Trình cài đặt Windows bao gồm Zenmap, một giao diện đồ họa. Một quét cơ bản của một máy chủ trông như thế này:

nmap -sV 192.168.1.1

Cờ -sV cố gắng phát hiện phiên bản dịch vụ chạy trên mỗi cổng mở. Điều này rất hữu ích cho kiểm toán bảo mật mạng trên Windows vì bạn có thể thấy không chỉ những cổng nào đang mở mà còn phần mềm nào đứng sau chúng.

Quan Trọng: Chỉ quét các máy chủ bạn sở hữu hoặc có sự cho phép rõ ràng để quét. Quét cổng một mạng mà bạn không kiểm soát có thể vi phạm Đạo Luật Lạm Dụng Máy Tính và Gian Lận (CFAA) hoặc các luật tương đương ở quốc gia của bạn.

Kiểm Tra Cổng Mở Của Bạn Từ Bên Ngoài

Đây là sự phân biệt quan trọng mà hầu hết các hướng dẫn bỏ qua: một cổng có thể lắng nghe cục bộ trên máy Windows của bạn nhưng vẫn xuất hiện đóng với bên ngoài thế giới. Điều này xảy ra khi bộ định tuyến của bạn chưa chuyển tiếp cổng đó, hoặc khi ISP của bạn chặn nó. Để biết internet thực sự thấy gì, bạn cần kiểm tra từ một vị trí bên ngoài.

Đây chính xác là những gì một trình kiểm tra cổng trực tuyến thực hiện. Nó bắt đầu kết nối TCP đến địa chỉ IP của bạn từ máy chủ từ xa và báo cáo xem kết nối có được chấp nhận (Open), bị từ chối (Closed) hay hết thời gian chờ (Timeout). Không cần cài đặt phần mềm, và nó bỏ qua tường lửa cục bộ của bạn hoàn toàn để hiển thị chế độ xem bên ngoài thực tế.

Công cụ kiểm tra cổng trực tuyến kiểm tra các cổng mở trên Windows

Xem Chính Xác Những Cổng Nào Đang Mở Trên Máy Windows Của Bạn

Công cụ kiểm tra cổng trực tuyến miễn phí của chúng tôi kiểm tra các kết nối TCP đến bất kỳ IP hoặc tên miền nào từ máy chủ bên ngoài, vì vậy bạn sẽ nhận được chế độ xem bên ngoài thực sự khi kiểm tra các cổng mở trên Windows. Kiểm tra một cổng duy nhất hoặc kiểm tra hàng loạt tối đa 10 cổng cùng một lúc, với kết quả trong vài mili giây.

Kiểm Tra Cổng Mở Của Bạn →

Tham Khảo Nhanh Các Cổng Thường Gặp

Biết dịch vụ nào sử dụng cổng nào tiết kiệm thời gian khi bạn khắc phục sự cố. Dưới đây là những cổng bạn sẽ gặp thường xuyên nhất trên hệ thống Windows:

Cổng Giao Thức Dịch Vụ Sử Dụng Thường Gặp Trên Windows
80 TCP HTTP Máy chủ web (IIS, Apache), máy chủ phát triển cục bộ
443 TCP HTTPS Máy chủ web an toàn, Windows Update
3389 TCP RDP Remote Desktop Protocol, quản trị từ xa
445 TCP SMB Chia sẻ tệp, chia sẻ mạng Windows
22 TCP SSH OpenSSH (tích hợp sẵn trong Windows 10/11)
21 TCP FTP Truyền tệp, dịch vụ FTP IIS
25 TCP SMTP Gửi email, chuyển tiếp máy chủ thư
3306 TCP MySQL Kết nối cơ sở dữ liệu MySQL/MariaDB
5432 TCP PostgreSQL Kết nối cơ sở dữ liệu PostgreSQL
135 TCP RPC Windows Remote Procedure Call, DCOM
Cổng 3389 (RDP) là một trong những cổng bị tấn công vũ phu mạnh mẽ nhất trên internet. Nếu bạn có RDP mở cho internet công cộng, hãy cân nhắc chuyển nó sang cổng không chuẩn hoặc hạn chế truy cập theo địa chỉ IP trong các quy tắc tường lửa của bạn.

Đóng Cổng Bạn Không Cần

Giám sát cổng Windows tốt không chỉ về việc tìm ra những gì đang mở. Nó là về việc quyết định những gì nên mở và đóng mọi thứ khác. Dưới đây là một cách tiếp cận thực tế:

  1. Chạy netstat -ano và liệt kê tất cả các cổng LISTENING. Ánh xạ mỗi PID thành tên quy trình bằng lệnh tasklist được hiển thị trước đó.
  2. Xác định các dịch vụ bạn không cần. Ví dụ, nếu bạn không sử dụng IIS, không có lý do gì để cổng 80 hoặc 443 được mở cục bộ. Dừng dịch vụ qua services.msc .
  3. Xem xét các quy tắc đến Tường Lửa Windows. Mở wf.msc và vô hiệu hóa bất kỳ quy tắc nào cho phép lưu lượng đến các cổng bạn đã xác định là không cần thiết.
  4. Kiểm tra bộ định tuyến của bạn. Các quy tắc chuyển tiếp cổng trên bộ định tuyến của bạn có thể để lộ các cổng ngay cả khi Tường Lửa Windows chặn chúng ở cấp độ HĐH. Đăng nhập vào bảng điều khiển quản trị viên bộ định tuyến của bạn và kiểm tra các cổng được chuyển tiếp.
  5. Kiểm tra lại từ bên ngoài. Sau khi thực hiện các thay đổi, chạy lại kiểm tra cổng bên ngoài để xác nhận các cổng không còn có thể truy cập được.

Các cảnh báo an ninh mạng CISA thường xuyên xuất bản cảnh báo về các cổng cụ thể bị khai thác trong tự nhiên. Kiểm tra danh sách đó định kỳ là một thói quen tốt nếu bạn quản lý máy chủ Windows.

Một cổng mở cục bộ có nghĩa là một dịch vụ trên máy Windows của bạn đang chủ động lắng nghe các kết nối trên số cổng đó. Một cổng mở từ bên ngoài có nghĩa là các máy tính bên ngoài trên internet thực sự có thể truy cập nó. Bộ định tuyến, ISP hoặc Tường Lửa Windows của bạn có thể chặn truy cập bên ngoài ngay cả khi cổng đang lắng nghe cục bộ. Luôn kiểm tra từ một công cụ bên ngoài để xác nhận trạng thái thực tế.

Điều này gần như luôn luôn được gây ra bởi một trong ba điều: Tường Lửa Windows có một quy tắc đến chặn cổng, bộ định tuyến của bạn không có quy tắc chuyển tiếp cổng cho cổng đó, hoặc ISP của bạn chặn cổng ở cấp độ mạng. Kiểm tra từng lớp theo thứ tự. Các cổng thường bị chặn bởi ISP bao gồm 25 (SMTP), 80 và 443 trên các kết nối dân cư.

Để lộ RDP trực tiếp cho internet là một rủi ro bảo mật đáng kể. Các bot tự động liên tục quét cổng 3389 mở và cố gắng đăng nhập vũ phu. Nếu bạn cần truy cập từ xa, hãy sử dụng VPN để tiếp cận mạng của bạn trước, hạn chế truy cập RDP đến các địa chỉ IP cụ thể trong Tường Lửa Windows, hoặc sử dụng cổng không chuẩn kết hợp với mật khẩu mạnh và Xác Thực Cấp Độ Mạng (NLA).

Netstat hiển thị các cổng UDP khi bạn sử dụng cờ -a . Tìm các hàng được gắn nhãn UDP trong cột Proto. Tuy nhiên, UDP không có bắt tay kết nối như TCP, vì vậy việc kiểm tra từ xa khó hơn nhiều. Hầu hết các trình kiểm tra cổng trực tuyến, bao gồm cả các công cụ dựa trên TCP, chỉ kiểm tra các kết nối TCP. Để quét UDP, Nmap với cờ -sU là tùy chọn thực tế, mặc dù nó yêu cầu quyền quản trị viên.

Mở wf.msc , nhấp "Inbound Rules", sau đó "New Rule" ở bên phải. Chọn "Port", chọn TCP hoặc UDP, nhập số cổng, chọn "Allow the connection", áp dụng nó cho các hồ sơ thích hợp (Domain, Private, Public) và đặt tên quy tắc. Đối với những người yêu thích dòng lệnh, hãy sử dụng: netsh advfirewall firewall add rule name="MyPort" dir=in action=allow protocol=TCP localport=8080 .

Timeout có nghĩa là trình kiểm tra cổng đã gửi yêu cầu kết nối TCP nhưng không nhận được phản hồi trong khoảng thời gian chờ (thường là vài giây). Điều này thường có nghĩa là tường lửa đang im lặng loại bỏ các gói tin thay vì chủ động từ chối chúng. Kết quả "Closed" có nghĩa là máy chủ đã gửi lại TCP reset, chủ động từ chối kết nối. Timeout phổ biến hơn với các cấu hình tường lửa nghiêm ngặt loại bỏ thay vì từ chối lưu lượng.