Hệ điều hành (OS), Linux

Hướng dẫn sử dụng công cụ quyét cổng Nmap Port Scanning trong Linux System

Nmap (Network Mapper) là công cụ quét cổng (port scanner) phổ biến hàng đầu, được sysadmin, pentester và chuyên gia bảo mật tin dùng. Bài viết này giúp bạn hiểu rõ và áp dụng công cụ Nmap một cách hiệu quả – từ scan cơ bản đến kỹ thuật scan nâng cao.

#nmap #portscanner #cybersecurity #linux #infosec #networking #SEO2025


1. Nmap là gì & tại sao bạn cần?

Nmap – viết tắt của Network Mapper, là một công cụ mã nguồn mở, hỗ trợ:

  • Phát hiện host/server trên mạng

  • Scan cổng và trạng thái (open/closed/filtered)

  • Phát hiện dịch vụ và phiên bản

  • Nhận diện hệ điều hành qua fingerprint

  • Tự động hóa quét lỗ hổng hệ thống mạng và máy chủ với NSE scripts

Lưu ý: Bạn hãy thay đổi địa chỉ IP của máy đích trong hệ thống mạng của bạn cùng với lệnh nmap trong bài viết này!


2. Cài đặt Nmap trên Linux sử dụng các lệnh sau:

  • Đối với hệ điều hành CentOS/Fedora/RHEL: 

    sudo dnf install nmap
  • Đối với hệ điều hành Debian/Ubuntu: 

    sudo apt-get install nmap

3. Các lệnh cơ bản trong sử dụng nmap

3.1 Quét host

  • Thực hiện quét SYN (privileged) hay TCP connect (unprivileged).

  • Hiển thị cổng mở, trạng thái và reverse-DNS.


3.2 Ping scan (phát hiện host đang online)

sudo nmap -sn 192.168.146.0/24
  • Chỉ dùng lệnh này để kiểm tra host online – không quét cổng


3.3 Quét cổng cụ thể

Nếu bạn muốn chạy 2 lệnh liên tiếp:

nmap -p 80,443 8.8.8.8 && nmap -p 1-65535 localhost

Hoặc:

nmap -p 80,443 8.8.8.8
nmap -p 1-65535 localhost
  • -p: Là tham số chọn cổng; hỗ trợ danh sách, dải, cú pháp protocol


3.4 Quét hàng loạt các địa chỉ IP:

nmap 192.168.146.1,2,3
nmap 192.168.146.*
  • Lệnh này hỗ trợ định dạng CIDR, range, wildcard


4. Scan nâng cao & phân tích

4.1 Quét nhanh các cổng phổ biến

nmap --top-ports 20 192.168.146.167
  • Lệnh này chỉ quét 20 cổng thường dùng nhất


4.2 Quét TCP SYN (stealth) – cần quyền root

sudo nmap -sS 192.168.146.167
  • Gửi gói SYN, không hoàn tất handshake → ít bị log hơn


4.3 Quét TCP Connect (dùng connect)

nmap -sT 192.168.146.167
  • Dễ bị hệ thống server đích phát hiện là đang bị quét, vì quá trình kết nối đầy đủ hơn và có thể sử dụng lệnh này không cần quyền root.


4.4 Bỏ ping (skip host discovery)

sudo nmap -Pn target_ip
  • Lệnh này cho phép quét kể cả host hay server đích, kể cả không trả lời ping


4.5 Tăng tốc độ scan

sudo nmap -sS -Pn -T4 192.168.1.1
  • -T4: Tốc độ nhanh (0 đến 5 scale)

  • -Pn: Bỏ qua ping để tăng tốc độ scan

 


5. Phát hiện dịch vụ & hệ điều hành

5.1 Phát hiện phiên bản dịch vụ trên server:

sudo nmap -sV 192.168.146.167
  • Gửi probe, hiển thị version của các dịch vụ đang lắng nghe trên các cổng của máy đích như SSH, HTTP…

 


5.2 Phát hiện hệ điều hành & fingerprint bằng cách chủ động scan mạnh hơn:

sudo nmap -O 192.168.146.167

hoặc kết hợp:

sudo nmap -A 192.168.146.167
  • Lệnh nmap với tham số này có thể thực hiện nhiều tác vụ như: OS detection, script, traceroute

 


6. Scan UDP

Để test lệnh này, bạn cần setup ví dụ 1 dịch vụ UDP trên máy đich sử dụng cho việc test như sau:

Ví dụ: Cài đặt và khởi động dịch vụtftp-server (lắng nghe UDP port 69).

sudo dnf install -y tftp-server
sudo systemctl enable --now tftp.socket
Chạy lần lượt các lệnh sau để cho phép firewalld mở upd port 69 trên server đích ( tốt nhất là bạn nên tắt firewalld đi cho việc làm lab và test của bạn) :
sudo firewall-cmd --add-port=69/udp --permanent
sudo firewall-cmd --reload

Bạn có thể kiểm tra tftp đã lắng nghe chưa bằng lệnh sau:

ss -u -lpn | grep :69
Sau đó từ máy client sử dụng lệnh nmap với tham số -sU để scan UDP port trên máy chủ đích:
sudo nmap -sU 192.168.1.1
  • Quét cổng UDP – thường scan rất chậm và dễ bị false-negative


7. Sử dụng NSE scripting để kiểm tra lỗ hổng trên server

7.1 Quét và kiểm tra lỗ hổng cho server:

sudo nmap --script vuln 192.168.1.105
  • Kích hoạt loạt script vuln để phát hiện CVE

7.2 Quét cổng HTTP cụ thể, bạn cũng có thể áp dụng lệnh này cho việc scan 1 cổng cụ thể:

sudo nmap -p80 --script http-title,http-enum 192.168.1.1
  • http-title: lấy tiêu đề trang

  • http-enum: liệt kê thư mục và endpoint


8. Output kết quả đầu ra & lưu trữ thành file cho việc làm báo cáo:

  • Xuất xuống file plain text:

    nmap -oN output.txt target_ip
  • XML cho xử lý:

    nmap -oX output.xml target_ip


9. Tóm tắt lệnh quan trọng

Công dụng Lệnh
Quét cổng nhanh nmap --top-ports 20 <host>
Quét SYN stealth (root) sudo nmap -sS <host>
Quét TCP connect (ko root) nmap -sT <host>
Bỏ ping -Pn
Phát hiện service -sV
OS detection / script -A hoặc -O
Quét UDP -sU
Quét lỗ hổng --script vuln
HTTP details --script http-title,http-enum
Lưu output -oN/-oX file

Lưu ý bảo mật & hiệu năng

  • Quét SYN stealth nên dùng dưới quyền root, và có thể dễ bị hệ thống tường lửa phát hiện.

  • UDP scan & script scan có thể rất chậm và gây tải hệ thống.

  • Bạn cần phải luôn tôn trọng pháp lý và quy định: quét chỉ nên thực hiện khi có quyền phép hợp pháp


Kết luận

  • Nmap là công cụ mạnh mẽ, linh hoạt và phổ biến nhất cho việc port scanning và phát hiện dịch vụ.

  • Với các lệnh vừa đơn giản vừa nâng cao, bạn có thể scan toàn bộ hệ thống mạng hoặc chủ yếu tập trung vào từng mục tiêu hay máy chủ cụ thể.

  • Kết hợp với NSE scripts, Nmap còn trở thành công cụ quét lỗ hổng & đánh giá an ninh đầy đủ.

Học và thực hành bài viết này sẽ giúp bạn nâng cao năng lực quản trị hệ thống và an ninh mạng – phù hợp cho việc học LPI Level 2, CompTIA, HCNA, OSCP, CEH…

#Nmap #PortScanner #NetworkSecurity #LinuxNetworking #CyberSecurityTools
#RedHat #CentOS9 #Ubuntu #PenetrationTesting #EthicalHacking
#NetworkTroubleshooting #DevOpsTools #SEO2025 #LPI #LinuxCommands
#SystemAdministrator #HardenLinux #OpenSourceTools #NetworkScanner #NSEscripts

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *