Відповіді:
Nmap ("Network Mapper") - це безкоштовна утиліта з відкритим кодом для дослідження мережі або аудиту безпеки
nmap 192.168.1.33 внутрішній ПК або nmap external ip address
більше інформації man nmap
nmap localhostі nmap 192.168.0.3(або що ви коли-небудь
netstat -ln. Ви моментально побачите всі відкриті порти.
nmap localhostне знайшли послуги, які прив'язувались лише до localhost. Наприклад, я бігаю influxdз bind-address:localhost:8086. Це не з'явилося в sudo nmap localhost, але з'явилося в sudo netstat -tulpn.
Я завжди цим користувався:
sudo netstat -ntlp | grep LISTEN
sudo netstat -ntlp | grep LISTEN... в sudoіншому випадку ... pid не буде надруковано.
-lвже фільтри для прослуховування. grep LISTENне допоможе приховати 2 рядки інформації заголовка.
-t: tcp,: -lпрослуховувальний сокет -p,: показати pid та назву програми,: -nдрук 127.0.0.1:80замість localhost:http. Довідка: linux.die.net/man/8/netstat
netstatзsudo apt-get install net-tools
sudo netstat --tcp --listening --programs --numeric. Не потрібно використовувати, grepякщо ви не хочете усунути заголовки стовпців.
Інші хороші способи дізнатись, які порти існують і які правила вашого брандмауера є:
sudo netstat -tulpn
sudo ufw status
nmapзнову змінюю відповідь , зручність використання - netstatце лайно.
Для списку відкритих портів використовуйте netstatкоманду.
Наприклад:
$ 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
У наведеному вище прикладі три служби прив’язані до адреси зворотного зв'язку.
Послуги IPv4, пов'язані з адресою петлі "127.0.0.1", доступні лише на локальній машині. Еквівалентною адресою зворотного зв'язку для IPv6 є ":: 1". IPv4-адреса "0.0.0.0" означає "будь-яку IP-адресу", що означає, що інші машини могли потенційно підключатися до будь-якого з локально налаштованих мережевих інтерфейсів на конкретному порту.
Інший метод полягає у використанні lsofкоманди:
$ 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)
Для отримання більш докладної інформації див man netstatабо man lsof.
-lваріантом є перерахування LISTENпортів. Тож греп був би тут зайвим ?!
Цього достатньо для того, щоб показати, що на IP-адресі є процес прослуховування IP-адреси 0.0.0.0(необхідний, щоб він відповів на будь-який запит) на порт 80 (стандартний номер порту веб-сервера). У моєму випадку це показує, що це веб-серверlighttpd
$ sudo netstat -ntlp | grep :80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2495/lighttpd
Якщо згодом ви хочете переконатися, що єдине, що ви дозволяєте через свій брандмауер - це порт 80, я часто використовую ShieldsUp від www.grc.com для проведення тесту на брандмауер.
sudo iptables -Lперерахує правила порту для вашого ПК. Зауважте, що якщо ви використовуєте брандмауери ufw або shorewall, вихід може бути важко прочитати. У цьому випадку скоріше скористайтеся, sudo ufw statusнаприклад.
Це самостійно не дуже корисно, оскільки навіть якщо відкритий доступ до порту, все одно буде відмовлено, якщо на ньому не буде прослуховуватися процес.
Якщо ви шукаєте постійний моніторинг портів для серверних машин або локальних, я думаю, ви також можете скористатися графічною версією nmap, тобто Zenmap для більш детальної версії
Zenmap - це офіційний графічний інтерфейс користувача (GUI) для сканера безпеки Nmap.
Доступні підтримки (Linux, Windows, Mac OS X, BSD тощо)
Погляньте на цей інструмент:
nmap localhostпрацювали чудово.