Cách kiểm tra các cổng đang mở trên Debian 10

Tác giả NetworkEngineer, T.M.Một 01, 2021, 11:32:35 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách kiểm tra các cổng đang mở trên Debian 10


Kiểm tra các cổng là rất quan trọng để xác minh cổng nào được mở và nghe trên hệ thống của bạn. Các dịch vụ lắng nghe có thể là một điểm xâm nhập cho các tin tặc có thể khai thác các lỗ hổng trong hệ thống để truy cập hoặc xâm phạm hệ thống. Bạn không nên để dịch vụ tiếp tục chạy nếu bạn không sử dụng dịch vụ đó. Ngoài ra, nó tiêu tốn tài nguyên bổ sung. Do đó, cần phải kiểm tra liên tục các cổng đang mở trên hệ thống của bạn.

Trong bài viết này, mình sẽ giải thích cách kiểm tra các cổng đang mở trên hệ thống Debian 10 bằng bốn cách khác nhau.

Lưu ý: Các lệnh và thủ tục được thảo luận trong bài viết này đã được thử nghiệm trên hệ thống Debian 10 Buster.

1. Kiểm tra các cổng đang mở bằng lệnh ss

Lệnh ss (socket statistics) trong Linux cung cấp thông tin quan trọng về các kết nối mạng bao gồm các cổng mở và listening sockets. Nó lấy thông tin này từ Kernel Linux. Khi lệnh ss được sử dụng mà không có bất kỳ tùy chọn dòng lệnh nào, nó sẽ hiển thị thông tin chi tiết về tất cả các kết nối hiện tại, bất kể chúng đang ở trạng thái nào.

Lệnh ss thay thế lệnh netstat.

Lệnh ss đi kèm với gói iproute2 và có sẵn trên hệ thống Debian. Tuy nhiên, trong mọi trường hợp, nếu bạn không tìm thấy nó trong hệ thống của mình, bạn có thể cài đặt nó một cách dễ dàng.

Mở cửa sổ dòng lệnh Terminal trong hệ thống Debian 10 của bạn và sử dụng lệnh sau trong đó:

Mã nguồn [Chọn]
$ sudo apt install iproute2
Để kiểm tra các cổng đang mở trên hệ thống Debian của bạn, hãy sử dụng lệnh sau trong Terminal:

Mã nguồn [Chọn]
$ sudo ss -tulpn
Trong đó:

  • -t, –tcp: Để xem tất cả các TCP sockets
  • -u, –udp: Để xem tất cả các UDP sockets
  • -l, –listening: Để xem tất cả các listening sockets
  • -p, processes: Để xem tiến trình nào đang sử dụng sockets
  • -n, –numeric: Sử dụng tùy chọn này nếu bạn muốn xem số cổng thay vì tên dịch vụ

Trong đầu ra, bạn sẽ thấy danh sách tất cả các kết nối TCP và UDP đang lắng nghe. 


Kết quả trên cho thấy chỉ có cổng 22 được mở trên hệ thống.

Lưu ý: Nếu bạn đang sử dụng tùy chọn -p hoặc –processes với lệnh ss, bạn phải là người dùng root hoặc người dùng có quyền sudo. Nếu không, bạn sẽ không thể thấy số nhận dạng tiến trình (PID) của tiến trình đang chạy trên các cổng.

2. Kiểm tra các cổng đang mở bằng lệnh netstat

Lệnh Netstat trong Linux cung cấp thông tin về các kết nối mạng hiện tại và số liệu thống kê. Netstat có các tùy chọn lệnh gần như tương tự như lệnh ss.

Để sử dụng lệnh netstat, bạn sẽ cần cài đặt các công cụ net-tools. Đưa ra lệnh sau trong Terminal để làm như vậy:

Mã nguồn [Chọn]
$ sudo apt-get install net-tools

Sau khi cài đặt, bạn có thể sử dụng lệnh netstat trong cửa sổ dòng lệnh Terminal Debian của mình.

Để kiểm tra các cổng đang mở trên hệ thống Debian của bạn, hãy sử dụng lệnh sau:

Mã nguồn [Chọn]
$ sudo netstat –tulnp
Trong đó:

  • -t, –tcp: Để xem tất cả các TCP sockets
  • -u, –udp: Để xem tất cả các UDP sockets
  • -l, –listening: Để xem tất cả các listening sockets
  • -p, processes: Để xem tiến trình nào đang sử dụng sockets
  • -n, –numeric: Sử dụng tùy chọn này nếu bạn muốn xem số cổng thay vì tên dịch vụ


Kết quả trên cho thấy chỉ có cổng 22 được mở trên hệ thống.

Lưu ý: Nếu bạn đang sử dụng tùy chọn -p hoặc –processes với lệnh netstat, bạn phải là người dùng root hoặc người dùng có quyền sudo. Nếu không, bạn sẽ không thể thấy số nhận dạng tiến trình (PID) của tiến trình đang chạy trên các cổng.

3. Kiểm tra các cổng đang mở bằng lệnh lsof

Lệnh lsof trong Linux là viết tắt của danh sách các tập tin mở (vì mọi thứ trong Linux đều là tập tin bao gồm thiết bị, thư mục, cổng, v.v.). Sử dụng lệnh lsof, bạn có thể tìm kiếm thông tin về các tập tin được mở bằng các tiến trình khác nhau.

Lệnh lsof có sẵn trên hệ thống Debian. Tuy nhiên, trong mọi trường hợp, nếu bạn không tìm thấy nó trong hệ thống của mình, bạn có thể cài đặt nó dễ dàng bằng cách sử dụng lệnh sau trong Terminal:

Mã nguồn [Chọn]
$ apt-get install lsof
Để sử dụng lsof để xem tất cả các cổng TCP đang nghe, hãy sử dụng lệnh sau trong Terminal:

Mã nguồn [Chọn]
$ sudo lsof -nP -iTCP -sTCP:LISTEN

Kết quả trên cho thấy chỉ có cổng 22 được mở trên hệ thống.

4. Kiểm tra các cổng đang mở bằng tiện ích Nmap

Nmap là một tiện ích dòng lệnh Linux được sử dụng để thực hiện quét hệ thống và mạng. Nó chủ yếu được sử dụng để kiểm tra mạng và quét bảo mật. Nó không được cài đặt theo mặc định trên các hệ thống Linux, tuy nhiên, bạn có thể cài đặt nó bằng cách sử dụng lệnh sau trong Terminal:

Mã nguồn [Chọn]
$ sudo apt install nmap

Sau khi chạy lệnh trên, hệ thống có thể yêu cầu xác nhận rằng bạn có muốn tiếp tục cài đặt hay không. Nhấn y để tiếp tục, sau đó, quá trình cài đặt sẽ được bắt đầu trên hệ thống của bạn.

Sau khi cài đặt, bạn có thể sử dụng Nmap để kiểm tra các cổng đang mở trên hệ thống của mình. Để làm như vậy, hãy sử dụng lệnh sau trong Terminal:

Mã nguồn [Chọn]
$ sudo nmap –sT –p-65535 ip-address
Vì địa chỉ IP của hệ thống của chúng ta là 192.168.72.158, do đó lệnh sẽ là:

Mã nguồn [Chọn]
$ sudo nmap –sT –p-65535 192.168.72.158

Kết quả trên cho thấy chỉ có cổng 22 được mở trên hệ thống.

Trong bài viết này, chúng ta đã thảo luận về cách kiểm tra các cổng đang mở trên hệ thống Debian 10. Mình hy vọng bạn thích bài viết này.

Các chủ đề tương tự (5)