GNU/Linux >> Linux Esercitazione >  >> Linux

Quali porte sono utilizzate da un'applicazione

Puoi usare netstat per questo. Guarda l'esempio (ho cercato ssh ):

netstat -putan | grep ssh
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1725/sshd
tcp        0      0 1.2.3.4:45734           1.2.3.5:22              ESTABLISHED 2491/ssh
tcp6       0      0 :::22                   :::*                    LISTEN      1725/sshd

Spiegazione:

Uso spesso i parametri -putan (perché sono semplici da ricordare).

  • -p :mostra i PID dell'applicazione/processo
  • -u :mostra porte/connessioni udp
  • -t :mostra porte/connessioni tcp
  • -a :mostra sia i socket in ascolto che quelli non in ascolto
  • -n :output numerico (non eseguire ricerche DNS per nomi host ecc.)

Nell'output sopra, vedi che c'è un processo daemon ssh (sshd ) con PID 1725 in ascolto sulla porta 22 su tutte le interfacce di rete (0.0.0.0 ). Inoltre esiste un processo client ssh (PID 2491 ) collegato all'indirizzo IP 1.2.3.5 al numero di porta 22 , il mio indirizzo IP è 1.2.3.4 e la mia porta esterna è 45734 . Vedi che la connessione è stata stabilita. Pertanto ho effettuato l'accesso tramite ssh .


Un altro strumento che può farlo è lsof :

# lsof -i -a -p 1981
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    1981 root    3u  IPv4    917      0t0  TCP host.example.com:ssh (LISTEN)
# lsof -i -a -p 1981 -n
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    1981 root    3u  IPv4    917      0t0  TCP 10.1.2.3:ssh (LISTEN)
# lsof -i -a -p 1981 -n -P
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    1981 root    3u  IPv4    917      0t0  TCP 10.1.2.3:22 (LISTEN)
#

Le opzioni utilizzate sono le seguenti:

  • -i per stampare le porte Internet aperte da un processo
  • -a per fare in modo che tutte le opzioni siano AND
  • -p 1981 per mostrare l'output per il processo 1981
  • -n per inibire la ricerca del nome host e mostrare invece l'IP
  • -P per inibire la ricerca del servizio e mostrare invece il numero di porta

lsof ha il vantaggio che puoi specificare il processo da controllare piuttosto che doverlo estrarre da un output più grande. netstat è disponibile in modo più affidabile sui sistemi, sebbene lsof sta diventando più standard di prima.


ss utility dal pacchetto iproute per Linux


Linux
  1. Cosa sono gli account utente riservati in MySQL

  2. Cosa sono i file sparsi in Linux

  3. Dove vengono utilizzati tutti i miei inode?

  4. A cosa servono i file .la di libtool?

  5. Debug live del kernel Linux, come si fa e quali strumenti vengono utilizzati?

Cosa sono i porti? Come controllare le porte aperte di Linux?

Linux:quali sorgenti di entropia vengono utilizzate dal kernel Linux?

Cosa sono gli inode in Linux?

SystemD - A cosa serve SystemD?

Cosa sono build-essential e build-dep?

Quali fonti di entropia sono utilizzate dal kernel Linux?