Risposte:
Nmap ("Network Mapper") è un'utilità gratuita e open source per l'esplorazione della rete o il controllo della sicurezza
nmap 192.168.1.33
Pc interno o nmap external ip address
maggiori informazioni man nmap
nmap localhost
e nmap 192.168.0.3
(o qualunque sia il tuo IP di macchina)
netstat -ln
. Vedrai immediatamente tutte le porte aperte.
nmap localhost
non ha trovato servizi associati solo a localhost. Ad esempio, corro influxd
con bind-address:localhost:8086
. Ciò non si è presentato sudo nmap localhost
, ma si è presentato sudo netstat -tulpn
.
L'ho sempre usato:
sudo netstat -ntlp | grep LISTEN
sudo netstat -ntlp | grep LISTEN
... usa sudo
altrimenti ... pid non verrà stampato.
-l
già filtra per l'ascolto. grep LISTEN
non aiuterà oltre a nascondere 2 righe di informazioni di intestazione.
-t
: tcp,: -l
socket di ascolto,: -p
mostra pid e nome del programma,: -n
stampa 127.0.0.1:80
invece di localhost:http
. Riferimento: linux.die.net/man/8/netstat
netstat
consudo apt-get install net-tools
sudo netstat --tcp --listening --programs --numeric
. Non è necessario utilizzare grep
se non si desidera eliminare le intestazioni di colonna.
Altri buoni modi per scoprire quali porte sono in elenco e quali sono le regole del firewall:
sudo netstat -tulpn
sudo ufw status
nmap
nuovo la risposta , l'usabilità di netstat
è una schifezza.
Per elencare le porte aperte utilizzare il netstat
comando.
Per esempio:
$ 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
Nell'esempio precedente tre servizi sono associati all'indirizzo di loopback.
I servizi IPv4 associati all'indirizzo di loopback "127.0.0.1" sono disponibili solo sul computer locale. L'indirizzo di loopback equivalente per IPv6 è ":: 1". L'indirizzo IPv4 "0.0.0.0" significa "qualsiasi indirizzo IP", il che significherebbe che altre macchine potrebbero potenzialmente connettersi a qualsiasi interfaccia di rete configurata localmente sulla porta specifica.
Un altro metodo è utilizzare il lsof
comando:
$ 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)
Per maggiori dettagli vedi man netstat
o man lsof
.
-l
opzione fosse quella di elencare le LISTEN
porte. Quindi il grep sarebbe superfluo qui ?!
Questo è sufficiente per mostrare che esiste un processo in ascolto sull'indirizzo IP 0.0.0.0
(necessario, in modo che risponderà a qualsiasi richiesta) sulla porta 80 (numero di porta del server Web standard). Nel mio caso questo dimostra che è il web serverlighttpd
$ sudo netstat -ntlp | grep :80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2495/lighttpd
Se in seguito si desidera assicurarsi che l'unica cosa consentita tramite il firewall sia la porta 80, spesso utilizzo ShieldsUp da www.grc.com per eseguire un test del firewall.
sudo iptables -L
elencherà le regole di porta per il tuo pc. Si noti che se si utilizzano firewall ufw o shorewall, l'output potrebbe essere difficile da leggere. In tal caso, utilizzare piuttosto sudo ufw status
per esempio.
Questo non è molto utile da solo poiché anche se una porta è aperta l'accesso verrà comunque negato se non vi è alcun processo in ascolto su quella porta.
Se stai cercando un monitoraggio continuo delle porte per macchine server o locali, penso che puoi anche utilizzare la versione grafica di nmap, ovvero Zenmap per una versione più dettagliata
Zenmap è l'interfaccia utente grafica ufficiale (GUI) per Nmap Security Scanner.
Supporti disponibili (Linux, Windows, Mac OS X, BSD, ecc.)
Dai un'occhiata a questa vista strumento:
nmap localhost
funzionato benissimo.