Cum să utilizați LSOF pentru a monitoriza porturile în timp real

Cum Sa Utilizati Lsof Pentru A Monitoriza Porturile In Timp Real



LSOF (List Open Files) este un instrument de monitorizare a liniei de comandă care este utilizat în sistemele de operare Linux/Unix. Comanda LSOF oferă informații despre fișierele active și procesele care le accesează în prezent.

Instrumentul de linie de comandă LSOF este extrem de benefic pentru administratorii de sistem și dezvoltatori, permițându-le să:

  • Determinați procesele care utilizează în prezent un anumit fișier sau port, deosebit de important în cazul conflictelor de porturi
  • Detectați fișierele care au fost șterse, dar care sunt încă deschise de procese care pot duce la un consum inutil de spațiu; comanda LSOF servește la identificarea și abordarea unor astfel de cazuri
  • Ajută la depanarea erorilor, cum ar fi „portul este deja în uz”, în mod eficient
  • Urmăriți activitatea în rețea și deschideți conexiunile la rețea în scopuri de monitorizare
  • Investigați modelele de acces la fișiere, contribuind la identificarea potențialelor breșe de securitate

În acest tutorial, veți învăța cum să utilizați comanda LSOF pentru a monitoriza porturile în timp real.







Sintaxa de bază a comenzii LSOF

Sintaxa comenzii LSOF este următoarea:



$ lsof [ Opțiuni ] [ nume ]

Opțiunile sunt steagurile care sunt utilizate cu comanda LSOF. Numele reprezintă numele fișierelor, PID-urile (ID-urile de proces), numele de utilizator sau fișierele de rețea (IPv4, IPv6). În funcție de opțiunile oferite, comanda LSOF afișează o listă de fișiere deschise care corespund acestor nume.



Monitorizați porturile în timp real utilizând comanda LSOF

LSOF este inclus implicit în multe sisteme Linux. Trebuie să descărcați și să instalați manual unul dintre pachetele disponibile dacă nu este instalat. Pentru a verifica instalarea LSOF pe sistemul dvs., utilizați următoarea comandă pentru a afișa versiunea instalată:





$ lsof -în

Este important de reținut că, pentru a utiliza comanda LSOF cu permisiunile corespunzătoare, unele informații despre procese și conexiunile la rețea pot necesita privilegii ridicate de superutilizator și poate fi necesar să utilizați „sudo” pentru a rula comanda cu drepturi administrative.



Listați fișierele de rețea

Când rulați comanda LSOF cu opțiunea „-i”, aceasta afișează informații despre procesele care au conexiuni la rețea, cum ar fi prize de ascultare sau conexiuni stabilite.

$ lsof –i

Comanda anterioară afișează informații despre numele procesului (COMMAND), ID-ul procesului (PID), utilizator (USER), descriptor de fișier (FD), tip de conexiune (TYPE), adrese locale și de la distanță și starea conexiunii. Ar trebui să vedeți următoarea ieșire:

Listați conexiunile TCP

Puteți filtra rezultatul pe baza unor criterii specifice, cum ar fi tipurile particulare de conexiuni sau porturi. De exemplu, puteți folosi „lsof -i tcp” pentru a enumera numai procesele asociate cu o conexiune TCP.

$ lsof -i tcp: 1 - 1024

Comanda anterioară filtrează informațiile despre procesele care au conexiuni TCP deschise în intervalul de porturi specificat de la 1 la 1024. Acest lucru poate fi util pentru identificarea proceselor care utilizează porturile binecunoscute asociate cu serviciile comune.

Monitorizați un anumit port în timp real

Folosind LSOF, puteți monitoriza un anumit port în timp real. De exemplu, doriți să monitorizați procesele legate de „HTTP” pe portul 80 care se actualizează la fiecare 3 secunde. Pentru a face acest lucru, monitorizați portul 80 în timp real cu următoarea comandă:

$ lsof -i : 80 -r3

Monitorizați portul SSHD 22 în timp real

Pentru a monitoriza toate conexiunile SSHD care rulează pe portul 22, executați următoarea comandă:

$ sudo lsof -i : 22 -r3

Această comandă monitorizează și afișează în mod continuu informațiile în timp real despre conexiunile de rețea pe portul 22 la fiecare 3 secunde. Acest lucru este util în special pentru urmărirea modificărilor, cum ar fi noile conexiuni SSH sau deconectări, așa cum se întâmplă în timp real.

Monitorizați intervalul de porturi în timp real

Pentru a monitoriza informațiile despre procesele în timp real care au conexiuni TCP deschise în intervalul de porturi specificat de la 1 la 1024, puteți utiliza următoarea comandă:

$ lsof -i tcp: 1 - 1024 -r3

Monitorizați toate porturile în timp real

Puteți monitoriza toate conexiunile de rețea în timp real folosind comanda LSOF. De exemplu, doriți să monitorizați în mod continuu și să afișați informații în timp real despre conexiunile la rețea la fiecare 5 secunde.

$ lsof -i -r5

Următoarea ieșire include detalii despre procese și prizele de rețea asociate acestora în timp real după fiecare 5 secunde:

În mod similar, puteți monitoriza doar conexiunile „stabilite” cu comanda LSOF:

$ lsof -i -ȘI -r10

Concluzie

În acest tutorial, am învățat cum să monitorizăm porturile în timp real folosind comanda LSOF. Această comandă poate ajuta, de asemenea, administratorii de sistem și alți utilizatori Linux să monitorizeze conexiunile de rețea, inclusiv toate porturile active sau deschise. Sperăm că acest ghid vă va ajuta să înțelegeți cum să utilizați comanda LSOF cu diferite opțiuni și să monitorizați diferitele porturi și procese în timp real.