Mi chiedevo come controllare la porta aperta / chiusa sul mio computer.
Ho usato netstat -a
sulla riga di comando.
Lo stato della porta "LISTENING" indica che la porta è aperta?
C'è una porta qualsiasi, che non è mostrata nell'output, chiusa?
Mi chiedevo come controllare la porta aperta / chiusa sul mio computer.
Ho usato netstat -a
sulla riga di comando.
Lo stato della porta "LISTENING" indica che la porta è aperta?
C'è una porta qualsiasi, che non è mostrata nell'output, chiusa?
Ci sono alcuni parametri per netstat
utili per questo:
-l
o --listening
mostra solo i socket attualmente in ascolto per la connessione in entrata. -a
o --all
mostra tutti i socket attualmente in uso. -t
o --tcp
mostra i socket tcp. -u
o --udp
mostra i socket udp. -n
o --numeric
mostra gli host e le porte come numeri, invece di risolvere in dns e cercare in / etc / services. Usi un mix di questi per ottenere quello che vuoi. Per sapere quali numeri di porta sono attualmente in uso, utilizzare uno di questi:
netstat -atn # For tcp
netstat -aun # For udp
netstat -atun # For both
Nell'output, tutte le porte menzionate sono in uso o in attesa di connessione in entrata o collegate a un peer ** tutte le altre sono chiuse. Le porte TCP e UDP sono larghe 16 bit (vanno da 1-65535)
** Possono anche essere connessi / disconnessi dal peer.
Puoi usare questo comando:
netstat -tulnp | grep <port no>
Se mostra qualche processo è usato. È chiuso (non usato) se non c'è uscita.
Un'altra riga di comando alternativa facile da usare per scoprire quale processo utilizza una porta:
lsof -n -i4TCP:$PORT | grep LISTEN
Ho aggiunto la prossima funzione nel mio .bash_profile,
function pslisten {
echo 'lsof -n -i4TCP: | grep LISTEN'
}
e ora esegui "pslisten 5060" per vedere chi cattura la mia porta SIP.
Funziona anche con Apple Mac OS X.
Lo stato della porta "LISTENING" indica che la porta è aperta?
Sì. Significa che alcuni servizi stanno ascoltando quella porta sul tuo computer per la connessione in entrata, cioè questa porta è aperta per stabilire nuove connessioni.
Qualsiasi porta che non viene mostrata nell'output indica che è chiusa?
Sì. Ricorda che netstat -a
mostrerà tutte le connessioni attive, cioè le porte che agiscono come entrambi i server (alcuni servizi stanno ascoltando queste porte per le connessioni da una macchina / processo differente) e stabilite (le connessioni sono stabilite su queste porte indipendentemente dal fatto che l'host / un servizio può essere un server o un client)
Tutte le porte tcp e udp appartengono a una categoria chiamata socket e ce ne sono molte. Per visualizzare le informazioni sul socket, puoi controllare man ss
.
Un'altra opzione è ss . È molto più facile da usare ....
Il comando di sotto mostrerà solo un elenco di socket di ascolto correnti.
[email protected]:~# ss -l
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
u_dgr UNCONN 0 0 * 23353 * 23352
u_dgr UNCONN 0 0 * 568 * 362
u_dgr UNCONN 0 0 * 14836 * 14837
u_dgr UNCONN 0 0 * 20446 * 369
u_dgr UNCONN 0 0 * 22877 * 369
u_dgr UNCONN 0 0 * 504 * 347
u_dgr UNCONN 0 0 * 16298 * 369
u_dgr UNCONN 0 0 * 23343 * 369
u_dgr UNCONN 0 0 * 24125 * 369
u_dgr UNCONN 0 0 * 24617 * 369
u_dgr UNCONN 0 0 * 23352 * 23353
u_dgr UNCONN 0 0 * 23334 * 369
u_dgr UNCONN 0 0 * 17113 * 369
u_dgr UNCONN 0 0 * 16957 * 369
u_dgr UNCONN 0 0 * 14793 * 362
u_dgr UNCONN 0 0 * 23345 * 362
u_dgr UNCONN 0 0 * 24070 * 369
udp UNCONN 0 0 *:sunrpc *:*
udp UNCONN 0 0 *:981 *:*
udp UNCONN 0 0 :::sunrpc :::*
udp UNCONN 0 0 :::981 :::*
tcp LISTEN 0 128 127.0.0.1:85 *:*
tcp LISTEN 0 128 *:ssh *:*
tcp LISTEN 0 128 *:3128 *:*
tcp LISTEN 0 100 127.0.0.1:smtp *:*
tcp LISTEN 0 128 *:8006 *:*
tcp LISTEN 0 128 *:sunrpc *:*
tcp LISTEN 0 128 :::ssh :::*
tcp LISTEN 0 100 ::1:smtp :::*
tcp LISTEN 0 128 :::sunrpc :::*
In realtà c'è un modo migliore per vedere quali porte hai aperto. Il problema con netstat
o lsof
è che interrogano lo stack di rete e in realtà non si connettono alla macchina ma cercano invece di vedere cosa è in esecuzione sul sistema. L'approccio migliore è utilizzare nmap
in questo modo:
nmap -sT -O localhost
Per vedere le porte aperte.
O questo potrebbe essere d'aiuto usando l'orologio, quindi giocare con ciò che vuoi vedere.
sudo watch -d -n0 "netstat -atnp | grep ESTA"
sudo watch -d -n0 "netstat -tulnp | grep ESTA"
Leggi altre domande sui tag netstat