Câu trả lời:
Nmap ("Network Mapper") là một tiện ích nguồn mở và miễn phí để khám phá mạng hoặc kiểm tra bảo mật
nmap 192.168.1.33
Pc nội bộ hoặc nmap external ip address
thêm thông tin man nmap
nmap localhost
và nmap 192.168.0.3
(hoặc bất kỳ máy IP nào của bạn)
netstat -ln
. Bạn sẽ thấy ngay tất cả các cổng mở.
nmap localhost
không tìm thấy các dịch vụ chỉ liên kết với localhost. Ví dụ, tôi chạy influxd
với bind-address:localhost:8086
. Điều đó đã không xuất hiện trong sudo nmap localhost
, nhưng đã xuất hiện trong sudo netstat -tulpn
.
Tôi đã luôn sử dụng cái này:
sudo netstat -ntlp | grep LISTEN
sudo netstat -ntlp | grep LISTEN
... sử dụng sudo
khác ... pid sẽ không được in.
-l
đã lọc để nghe. grep LISTEN
Sẽ không giúp gì ngoài việc ẩn 2 dòng thông tin tiêu đề.
-t
: tcp , -l
: socket socket , -p
: hiển thị pid và tên chương trình , -n
: in 127.0.0.1:80
thay vì localhost:http
. Tham khảo: linux.die.net/man/8/netstat
netstat
vớisudo apt-get install net-tools
sudo netstat --tcp --listening --programs --numeric
. Không cần sử dụng grep
trừ khi bạn muốn loại bỏ các tiêu đề cột.
Các cách tốt khác để tìm hiểu các cổng đang lắng nghe và các quy tắc tường lửa của bạn là gì:
sudo netstat -tulpn
sudo ufw status
nmap
một lần nữa, khả năng sử dụng netstat
là tào lao.
Để liệt kê các cổng mở sử dụng netstat
lệnh.
Ví dụ:
$ sudo netstat -tulpn | grep LISTEN
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 5452/dnsmasq
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1037/cupsd
tcp6 0 0 ::1:631 :::* LISTEN 1037/cupsd
Trong ví dụ trên, ba dịch vụ được liên kết với địa chỉ loopback.
Các dịch vụ IPv4 được liên kết với địa chỉ loopback "127.0.0.1" chỉ khả dụng trên máy cục bộ. Địa chỉ loopback tương đương cho IPv6 là ":: 1". Địa chỉ IPv4 "0.0.0.0" có nghĩa là "bất kỳ địa chỉ IP nào", điều đó có nghĩa là các máy khác có khả năng kết nối với bất kỳ giao diện mạng được định cấu hình cục bộ nào trên cổng cụ thể.
Một phương pháp khác là sử dụng lsof
lệnh:
$ sudo lsof -nP -i | grep LISTEN
cupsd 1037 root 9u IPv6 11276 0t0 TCP [::1]:631 (LISTEN)
cupsd 1037 root 10u IPv4 11277 0t0 TCP 127.0.0.1:631 (LISTEN)
dnsmasq 5452 nobody 5u IPv4 212707 0t0 TCP 127.0.0.1:53 (LISTEN)
Để biết thêm chi tiết xem man netstat
hoặc man lsof
.
-l
tùy chọn là liệt kê LISTEN
các cổng ing. Vì vậy, grep sẽ là thừa ở đây?!
Điều này đủ để cho thấy rằng có một quá trình lắng nghe địa chỉ IP 0.0.0.0
(cần thiết để nó sẽ trả lời bất kỳ yêu cầu nào) trên cổng 80 (số cổng máy chủ web tiêu chuẩn). Trong trường hợp của tôi, điều này cho thấy nó là máy chủ weblighttpd
$ sudo netstat -ntlp | grep :80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2495/lighttpd
Nếu sau này bạn muốn đảm bảo rằng điều duy nhất bạn cho phép thông qua tường lửa của mình là cổng 80, tôi thường sử dụng ShieldsUp từ www.grc.com để thực hiện kiểm tra tường lửa.
sudo iptables -L
sẽ liệt kê các quy tắc cổng cho máy tính của bạn. Lưu ý rằng nếu bạn đang sử dụng tường lửa ufw hoặc wallwall, đầu ra có thể khó đọc. Trong trường hợp đó thay vì sử dụng sudo ufw status
ví dụ.
Điều này không hữu ích lắm vì ngay cả khi một cổng được truy cập mở vẫn sẽ bị từ chối nếu không có quá trình lắng nghe trên cổng đó.
Nếu bạn đang tìm kiếm giám sát liên tục các cổng cho máy chủ hoặc cục bộ, tôi nghĩ bạn cũng có thể sử dụng phiên bản đồ họa của nmap tức là Zenmap cho phiên bản chi tiết hơn
Zenmap là giao diện người dùng đồ họa (GUI) chính thức cho Trình quét bảo mật Nmap.
Hỗ trợ có sẵn (Linux, Windows, Mac OS X, BSD, v.v.)
Có một cái nhìn để xem công cụ này:
nmap localhost
đã làm việc tuyệt vời.