Port TCP là một khái niệm quan trọng trong mạng máy tính. Mỗi dịch vụ mạng (như HTTP, FTP, SSH) chạy trên một port cụ thể. Việc kiểm tra trạng thái của các port TCP có thể giúp chẩn đoán các vấn đề mạng, cấu hình bảo mật hoặc xác định các dịch vụ đang chạy trên máy tính. Bài viết sau đây, thietbinas.com sẽ hướng dẫn bạn cách nhận biết trạng thái của các port TCP trên ba hệ điều hành phổ biến: Windows, macOS và Linux.
Port TCP là gì
Port TCP (Transmission Control Protocol Port) hay còn gọi là Cổng TCP là một số nhận dạng 16 bit được sử dụng để xác định các ứng dụng khác nhau đang giao tiếp qua mạng, chúng hoạt động như một địa chỉ cụ thể cho phép nhiều ứng dụng chạy trên cùng một máy tính giao tiếp đồng thời mà không bị xung đột với nhau.
Cách thức hoạt động của cổng TCP
Khi một ứng dụng muốn gửi dữ liệu qua mạng, nó sẽ yêu cầu hệ điều hành gán cho nó một cổng TCP, hệ điều hành sẽ chọn một cổng chưa sử dụng và lưu trữ thông tin về cổng đó, bao gồm địa chỉ IP của máy tính và ứng dụng nào đang sử dụng nó.
Khi dữ liệu được gửi, thông tin cổng TCP được bao gồm trong gói tin để đích có thể biết dữ liệu đó được gửi bởi ứng dụng nào và phải được xử lý như thế nào. Khi dữ liệu được nhận, hệ điều hành sẽ sử dụng thông tin cổng TCP để chuyển tiếp dữ liệu đến ứng dụng chính xác.
Ưu điểm của cổng TCP
-
- Cho phép nhiều ứng dụng giao tiếp đồng thời: Cổng TCP cho phép nhiều ứng dụng chạy trên cùng một máy tính giao tiếp qua mạng mà không bị xung đột với nhau.
- Cung cấp khả năng kiểm soát lỗi: TCP sử dụng một số kỹ thuật để đảm bảo rằng dữ liệu được truyền chính xác, chẳng hạn như kiểm tra tổng hợp và xác nhận.
- Cung cấp khả năng kiểm soát lưu lượng: TCP có thể điều chỉnh tốc độ truyền dữ liệu để tránh tắc nghẽn mạng.
Một số ví dụ về cổng TCP phổ biến:
-
- HTTP (80): Được sử dụng cho giao tiếp web.
- HTTPS (443): Được sử dụng cho giao tiếp web an toàn.
- FTP (20, 21): Được sử dụng để truyền tệp.
- SMTP (25): Được sử dụng để gửi email.
- POP3 (110): Được sử dụng để nhận email.
Cách nhận biết trạng thái Port TCP trên Windows
Có hai phương pháp chính để kiểm tra trạng thái port TCP trên Windows: sử dụng công cụ dòng lệnh Netstat hoặc công cụ tiện ích đồ họa TCPView.
1. Sử dụng Netstat
Netstat là công cụ được tích hợp sẵn trong Windows, cho phép bạn hiển thị thông tin chi tiết về các kết nối mạng, bao gồm trạng thái port TCP.
Cách thực hiện:
-
- Mở Command Prompt với quyền Adminstrators.
- Nhập lệnh netstat -a -n rồi ấn Enter
- Giải thích kết quả:
- Nếu port đang ở trạng thái LISTENING, nghĩa là port đó đang mở và sẵn sàng cho các kết nối đến.
- Nếu port ở trạng thái ESTABLISHED, nghĩa là port đó đang được sử dụng cho một kết nối đang hoạt động.
- Nếu port ở trạng thái TIME_WAIT, nghĩa là port đã được đóng nhưng vẫn đang trong trạng thái chờ trước khi được tái sử dụng.
- Nếu port không được hiển thị trong danh sách, nghĩa là nó không được mở.
2. Sử dụng công cụ TCPView
TCPView là tiện ích miễn phí từ Microsoft, cung cấp giao diện đồ họa trực quan để xem danh sách các kết nối TCP đang hoạt động, bao gồm trạng thái port.
Cách thực hiện:
-
- Tải xuống và cài đặt TCPView từ trang web của Microsoft: https://learn.microsoft.com/en-us/sysinternals/downloads/tcpview
- Chạy TCPView.
- Tìm kiếm port bạn muốn kiểm tra trong danh sách.
- Trạng thái port sẽ được hiển thị trong cột State.
Lưu ý:
-
- Khi sử dụng Netstat, bạn có thể cần sử dụng lệnh netstat -ano để hiển thị thêm thông tin.
- Một số chương trình antivirus hoặc firewall có thể chặn Netstat hoạt động.
- TCPView cung cấp nhiều tính năng nâng cao hơn Netstat như khả năng lọc các kết nối theo địa chỉ IP, quy trình hoặc tên chương trình.
Nhận biết trạng thái Port TCP trên macOS
Giống như Windows, trên hệ điều hành macOS cũng có hai cách chính để kiểm tra trạng thái port TCP trên macOS là sử dụng dòng lệnh Netstat hoặc công cụ tiện ích lsof.
1. Sử dụng Netstat
Netstat là công cụ được tích hợp sẵn trong macOS cũng tương tự như Windows, cho phép bạn hiển thị thông tin chi tiết về các kết nối mạng, bao gồm trạng thái port TCP.
Cách thực hiện:
-
- Mở Command Prompt với quyền Adminstrators.
- Nhập lệnh netstat -an rồi ấn Enter
- Giải thích kết quả:
-
- Nếu port đang ở trạng thái LISTENING, nghĩa là port đó đang mở và sẵn sàng cho các kết nối đến.
- Nếu port ở trạng thái ESTABLISHED, nghĩa là port đó đang được sử dụng cho một kết nối đang hoạt động.
- Nếu port ở trạng thái TIME_WAIT, nghĩa là port đã được đóng nhưng vẫn đang trong trạng thái chờ trước khi được tái sử dụng.
- Nếu port không được hiển thị trong danh sách, nghĩa là nó không được mở.
-
2. Sử dụng lsof
Lsof là công cụ dòng lệnh khác cung cấp thông tin về các tệp đang mở, bao gồm cả các socket mạng.
Cách thực hiện:
-
- Mở Terminal.
- Nhập lệnh lsof -nP -iTCP -sTCP:LISTEN để liệt kê tất cả các port đang ở trạng thái LISTENING hoặc bạn có thể nhập lệnh lsof | grep :<số port> thay thế <số port> bằng số port bạn muốn kiểm tra để xem các port cụ thể.
- Giải thích kết quả:
- Cột COMMAND sẽ hiển thị tên của chương trình đang sử dụng port.
- Cột PID sẽ hiển thị ID quy trình của chương trình.
Lưu ý:
-
- Khi sử dụng Netstat, bạn có thể cần sử dụng tùy chọn -p để chỉ định giao diện mạng.
- Một số chương trình antivirus hoặc firewall có thể chặn Netstat hoạt động.
- Lsof cung cấp thêm thông tin về các chương trình đang sử dụng port, so với Netstat.
Ngoài ra, bạn cũng có thể sử dụng các công cụ quét port trực tuyến để kiểm tra trạng thái port TCP. Tuy nhiên, cần lưu ý rằng những công cụ này có thể không cung cấp thông tin đủ tin cậy và chính xác.
Nhận biết trạng thái Port TCP trên Linux
1. Sử dụng Netstat
Linux cũng hỗ trợ lệnh netstat tương tự như Windows và macOS.
Cách thực hiện:
-
- Mở Terminal.
- Gõ lệnh netstat -an để kiểm tra các kết nối mạng
- Ngoài ra, để xem các port TCP đang ở trạng thái LISTENING, gõ netstat -tuln
2. Sử dụng ss
ss là công cụ mới hơn, nhanh hơn và được khuyến khích sử dụng thay cho `netstat`.
-
- Để kiểm tra tất cả các kết nối TCP: ss -t -a
- Để xem các port TCP đang ở trạng thái LISTENING: ss -t -l
- Để lọc các port cụ thể: ss -t -l | grep :80
3. Sử dụng lsof
lsof cũng có thể sử dụng trên Linux để kiểm tra trạng thái các port TCP
-
- Để liệt kê tất cả các kết nối TCP đang ở trạng thái LISTENING: lsof -iTCP -sTCP:LISTEN
- Để kiểm tra các port cụ thể: lsof -i :80
4. Sử dụng nmap
nmap là một công cụ mạnh mẽ cho việc quét mạng và kiểm tra trạng thái các port.
-
- Cài đặt nmap:
- Trên Debian/Ubunt: sudo apt-get install nmap
- Trên CentOS/RHEL: sudo yum install nmap
- Cài đặt nmap:
-
- Sử dụng nmap để quét các port TCP trên máy cục bộ: nmap -sT localhost
- Để kiểm tra một port cụ thể: nmap -p 80 localhost
Kết luận
Việc kiểm tra trạng thái của các port TCP là một kỹ năng quan trọng cho những người làm việc với mạng và bảo mật máy tính. Windows, macOS và Linux đều cung cấp nhiều công cụ mạnh mẽ để tiến hành việc kiểm tra một cách dễ dàng. Trên đây là những hướng dẫn mà Thietbinas.com đã chỉ cho bạn đọc để nhận biết trạng thái port TCP trên các hệ điều hành Windows – macOS và Linux. Hãy thử các dòng lệnh và công cụ trên để nắm vững cách kiểm tra trạng thái port TCP, từ đó cải thiện hiệu quả công việc và bảo mật hệ thống. Chúc bạn thực hiện thành công!