In questo articolo parleremo brevemente delle porte nelle reti di computer e passeremo a come elencare tutte le porte aperte in Linux.
Nelle reti di computer, e più decisamente in termini di software, una porta è un'entità logica che funge da punto finale della comunicazione verso identificare una determinata applicazione o processo su un Linux sistema operativo. È un numero a 16 bit (0 a 65535) che differenzia un'applicazione da un'altra sui sistemi terminali.
I due protocolli di trasporto Internet più diffusi, Protocollo di controllo della trasmissione (TCP) e il Protocollo del datagramma utente (UDP) e altri protocolli meno noti utilizzano i numeri di porta per le sessioni di comunicazione (numeri di porta di origine e di destinazione insieme agli indirizzi IP di origine e di destinazione).
Inoltre, una combinazione di indirizzo IP, porta e protocollo come TCP/UDP è noto come socket e ogni servizio deve avere un socket univoco.
Di seguito sono elencate le diverse categorie di porti:
È possibile visualizzare un elenco di diverse applicazioni e combinazione porta/protocollo in /etc/services
file in Linux usando comando del gatto:
$ cat /etc/services OR. $ cat /etc/servizi | meno.
Servizi di rete e porte
# /etc/services: # $Id: services, v 1.48 2009/11/11 14:32:31 ovasik Exp $ # # Servizi di rete, stile Internet. # Versione servizi IANA: ultimo aggiornamento 2009-11-10. # # Si noti che attualmente è politica della IANA assegnare un singolo noto. # numero di porta sia per TCP che per UDP; quindi, la maggior parte delle voci qui ha due voci. # anche se il protocollo non supporta le operazioni UDP. # Aggiornato da RFC 1700, ``Numeri assegnati'' (ottobre 1994). Non tutti i porti. # sono inclusi, solo quelli più comuni. # # È possibile ottenere le ultime assegnazioni delle porte IANA. # http://www.iana.org/assignments/port-numbers. # Le porte conosciute sono quelle da 0 a 1023. # Le porte registrate sono quelle da 1024 a 49151. # Le porte dinamiche e/o private sono quelle da 49152 a 65535. # # Ogni riga descrive un servizio ed è della forma: # # nome-servizio porta/protocollo [alias ...] [# commento] tcpmux 1/tcp # Multiplexer del servizio porta TCP. tcpmux 1/udp # Multiplexer del servizio di porta TCP. rje 5/tcp # Inserimento lavoro remoto. rje 5/udp # Inserimento lavoro remoto. eco 7/tcp. eco 7/udp. scartare 9/tcp sink null. scartare 9/udp sink null. utenti di sysstat 11/tcp. utenti di sysstat 11/udp. giorno 13/tcp. giorno 13/ud. qotd 17/tcp preventivo. qotd 17/udp preventivo. msp 18/tcp # protocollo di invio messaggio. msp 18/udp # protocollo di invio messaggio. carica 19/tcp fonte ttytst. carica 19/udp ttytst fonte. ftp-dati 20/tcp. ftp-dati 20/udp. # 21 è registrato su ftp, ma utilizzato anche da fsp. ftp21/tcp. ftp 21/udp fsp fspd. ssh 22/tcp # Il protocollo Secure Shell (SSH). ssh 22/udp # Il protocollo Secure Shell (SSH). telnet 23/tcp. telnet 23/udp.
Per elencare tutte le porte aperte o attualmente in esecuzione, incluse TCP e UDP in Linux, useremo netstat, è un potente strumento per monitorare le connessioni di rete e le statistiche.
Elenca tutte le porte di rete utilizzando il comando Netstat
$ netstat -lntu Proto Recv-Q Send-Q Indirizzo locale Indirizzo estero Stato tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:3306 0.0.0.0:* ASCOLTA tcp 0 0 0.0.0.0:25 0.0.0.0:* ASCOLTA tcp 0 0 22 * ASCOLTA tcp 0 0 80 * ASCOLTA tcp 0 0 25 * ASCOLTA udp 0 0 0.0.0.0:68 0.0.0.0:*
In cui si,
-l
– stampa solo prese di ascolto-n
– mostra il numero di porta-T
– abilita l'elenco delle porte tcp-u
– abilita l'elenco delle porte udpPuoi anche usare ss command, un'utile utility ben nota per esaminare i socket in un sistema Linux. Esegui il comando seguente per elencare tutte le porte TCP e UCP aperte:
Elenca tutte le porte di rete utilizzando il comando ss
$ ss -lntu Netid State Recv-Q Send-Q Indirizzo locale: Port Peer Address: Port udp UNCONN 0 0 *:68 *:* tcp LISTEN 0 128 22 * tcp ASCOLTA 0 128 *:22 *:* tcp ASCOLTA 0 50 *:3306 *:* tcp ASCOLTA 0 128 80 ::* tcp ASCOLTA 0 100 25 * tcp ASCOLTA 0 100 *:25
Impegnati a leggere le pagine man dei comandi sopra per ulteriori informazioni sull'utilizzo.
In sintesi, la comprensione del concetto di porte nelle reti di computer è molto vitale per gli amministratori di sistema e di rete. Puoi anche passare attraverso questo guida netstat con esempi semplici, precisi e ben spiegati.
Ultimo ma non meno importante, contattaci condividendo altri metodi per elencare le porte aperte in Linux o facendo una domanda tramite il modulo di risposta sottostante.