Come utilizzare LSOF per monitorare le porte in tempo reale

Come Utilizzare Lsof Per Monitorare Le Porte In Tempo Reale



LSOF (List Open Files) è uno strumento di monitoraggio della riga di comando utilizzato nei sistemi operativi simili a Linux/Unix. Il comando LSOF fornisce informazioni sui file attivi e sui processi che attualmente vi accedono.

Lo strumento da riga di comando LSOF è estremamente vantaggioso per gli amministratori di sistema e gli sviluppatori poiché consente loro di:

  • Determinare i processi che attualmente utilizzano un file o una porta specifica, particolarmente importante in caso di conflitti di porte
  • Rileva i file che sono stati cancellati ma sono ancora aperti da processi che possono portare a un consumo di spazio non necessario; il comando LSOF serve per identificare e affrontare tali istanze
  • Aiuta a risolvere efficacemente gli errori, come 'la porta è già in uso'.
  • Tieni traccia dell'attività di rete e delle connessioni di rete aperte a scopo di monitoraggio
  • Esaminare i modelli di accesso ai file, contribuendo all'identificazione di potenziali violazioni della sicurezza

In questo tutorial imparerai come utilizzare il comando LSOF per monitorare le porte in tempo reale.







Sintassi di base del comando LSOF

La sintassi del comando LSOF è la seguente:



$ lsof [ opzioni ] [ nomi ]

Le opzioni sono i flag utilizzati con il comando LSOF. I nomi rappresentano nomi di file, PID (ID di processo), nomi utente o file di rete (IPv4, IPv6). A seconda delle opzioni fornite, il comando LSOF visualizza un elenco di file aperti che corrispondono a questi nomi.



Monitora le porte in tempo reale utilizzando il comando LSOF

LSOF è incluso per impostazione predefinita in molti sistemi Linux. È necessario scaricare e installare manualmente uno dei pacchetti disponibili se non è installato. Per verificare l'installazione di LSOF sul tuo sistema, utilizza il seguente comando per visualizzare la versione installata:





$ lsof -In

È importante notare che per utilizzare il comando LSOF con le autorizzazioni appropriate, alcune informazioni sui processi e sulle connessioni di rete potrebbero richiedere privilegi elevati di superutente e potrebbe essere necessario utilizzare 'sudo' per eseguire il comando con diritti di amministratore.



Elenca i file di rete

Quando esegui il comando LSOF con l'opzione '-i', vengono visualizzate le informazioni sui processi che dispongono di connessioni di rete come socket di ascolto o connessioni stabilite.

$ lsof –i

Il comando precedente visualizza le informazioni sul nome del processo (COMMAND), l'ID del processo (PID), l'utente (USER), il descrittore di file (FD), il tipo di connessione (TYPE), gli indirizzi locali e remoti e lo stato della connessione. Dovresti vedere il seguente output:

Elenca le connessioni TCP

È possibile filtrare l'output in base a criteri specifici come particolari tipi di connessioni o porte. Ad esempio, potresti utilizzare 'lsof -i tcp' per elencare solo i processi associati a una connessione TCP.

$ lsof -io TCP: 1 - 1024

Il comando precedente filtra le informazioni sui processi che hanno connessioni TCP aperte all'interno dell'intervallo di porte specificato da 1 a 1024. Ciò può essere utile per identificare quali processi utilizzano le porte note associate ai servizi comuni.

Monitora una porta specifica in tempo reale

Usando LSOF, puoi monitorare una porta specifica in tempo reale. Ad esempio, desideri monitorare i processi relativi a 'HTTP' sulla porta 80 che si aggiorna ogni 3 secondi. Per fare ciò, monitora la porta 80 in tempo reale con il seguente comando:

$ lsof -io : 80 -r3

Monitora la porta SSHD 22 in tempo reale

Per monitorare tutte le connessioni SSHD in esecuzione sulla porta 22, eseguire il comando seguente:

$ sudo lsof -io : 22 -r3

Questo comando monitora e visualizza continuamente le informazioni in tempo reale sulle connessioni di rete sulla porta 22 ogni 3 secondi. Ciò è particolarmente utile per tenere traccia delle modifiche, come nuove connessioni o disconnessioni SSH, mentre si verificano in tempo reale.

Monitora l'intervallo di porte in tempo reale

Per monitorare le informazioni sui processi in tempo reale che hanno connessioni TCP aperte nell'intervallo di porte specificato da 1 a 1024, è possibile utilizzare il seguente comando:

$ lsof -io TCP: 1 - 1024 -r3

Monitora tutte le porte in tempo reale

Puoi monitorare tutte le connessioni di rete in tempo reale utilizzando il comando LSOF. Ad esempio, desideri eseguire il monitoraggio continuo e visualizzare le informazioni in tempo reale sulle connessioni di rete ogni 5 secondi.

$ lsof -io -r5

Il seguente output include i dettagli sui processi e sui socket di rete associati in tempo reale dopo ogni 5 secondi:

Allo stesso modo è possibile monitorare anche solo le connessioni “stabilite” con il comando LSOF:

$ lsof -io -E -r10

Conclusione

In questo tutorial abbiamo imparato come monitorare le porte in tempo reale utilizzando il comando LSOF. Questo comando può anche aiutare gli amministratori di sistema e altri utenti Linux a monitorare le connessioni di rete, incluse tutte le porte attive o aperte. Ci auguriamo che questa guida ti aiuti a capire come utilizzare il comando LSOF con diverse opzioni e monitorare le diverse porte e processi in tempo reale.