Jak používat LSOF ke sledování portů v reálném čase

Jak Pouzivat Lsof Ke Sledovani Portu V Realnem Case



LSOF (List Open Files) je nástroj pro monitorování příkazového řádku, který se používá v operačních systémech podobných Linuxu/Unixu. Příkaz LSOF poskytuje informace o aktivních souborech a procesech, které k nim aktuálně přistupují.

Nástroj příkazového řádku LSOF je velmi přínosný pro systémové administrátory a vývojáře, protože jim umožňuje:

  • Určete procesy, které aktuálně využívají konkrétní soubor nebo port, což je zvláště důležité v případě konfliktů portů
  • Zjistit soubory, které byly odstraněny, ale jsou stále otevřené procesy, které mohou vést ke zbytečné spotřebě místa; příkaz LSOF slouží k identifikaci a adresování takových případů
  • Účinně pomáhá při odstraňování chyb, například „port je již používán“.
  • Sledujte aktivitu sítě a otevřete síťová připojení pro účely monitorování
  • Prozkoumejte vzorce přístupu k souborům a přispějte k identifikaci potenciálních narušení bezpečnosti

V tomto tutoriálu se naučíte, jak používat příkaz LSOF ke sledování portů v reálném čase.







Základní syntaxe příkazu LSOF

Syntaxe příkazu LSOF je následující:



$ lsof [ možnosti ] [ jména ]

Volby jsou příznaky, které se používají s příkazem LSOF. Názvy představují názvy souborů, PID (Process ID), uživatelská jména nebo síťové soubory (IPv4, IPv6). V závislosti na poskytnutých možnostech zobrazí příkaz LSOF seznam otevřených souborů, které odpovídají těmto názvům.



Monitorujte porty v reálném čase pomocí příkazu LSOF

LSOF je standardně součástí mnoha systémů Linux. Pokud není nainstalován jeden z dostupných balíčků, musíte jej stáhnout a nainstalovat ručně. Chcete-li zkontrolovat instalaci LSOF ve vašem systému, použijte následující příkaz k zobrazení nainstalované verze:





$ lsof -v

Je důležité si uvědomit, že pro použití příkazu LSOF s příslušnými oprávněními mohou některé informace o procesech a síťových připojeních vyžadovat zvýšená oprávnění superuživatele a ke spuštění příkazu s právy správce může být nutné použít „sudo“.



Seznam síťových souborů

Když spustíte příkaz LSOF s volbou „-i“, zobrazí se informace o procesech, které mají síťová připojení, jako jsou naslouchající sokety nebo navázaná připojení.

$ lsof –i

Předchozí příkaz zobrazí informace o názvu procesu (COMMAND), ID procesu (PID), uživateli (USER), deskriptoru souboru (FD), typu připojení (TYPE), lokální a vzdálené adrese a stavu připojení. Měli byste vidět následující výstup:

Vypište TCP spojení

Výstup můžete filtrovat na základě specifických kritérií, jako jsou konkrétní typy připojení nebo porty. Můžete například použít „lsof -i tcp“ k vypsání pouze procesů spojených s připojením TCP.

$ lsof -i tcp: 1 - 1024

Předchozí příkaz filtruje informace o procesech, které mají otevřená připojení TCP v zadaném rozsahu portů od 1 do 1024. To může být užitečné pro identifikaci procesů, které používají známé porty spojené s běžnými službami.

Monitorujte konkrétní port v reálném čase

Pomocí LSOF můžete monitorovat konkrétní port v reálném čase. Chcete například sledovat procesy související s „HTTP“ na portu 80, který se aktualizuje každé 3 sekundy. Chcete-li to provést, monitorujte port 80 v reálném čase pomocí následujícího příkazu:

$ lsof -i : 80 -r3

Sledujte port SSHD 22 v reálném čase

Chcete-li monitorovat všechna připojení SSHD, která běží na portu 22, spusťte následující příkaz:

$ sudo lsof -i : 22 -r3

Tento příkaz nepřetržitě monitoruje a každé 3 sekundy zobrazuje informace o síťových připojeních na portu 22 v reálném čase. To je užitečné zejména pro sledování změn, jako jsou nová připojení SSH nebo odpojení, jak k nim dochází v reálném čase.

Sledujte rozsah portů v reálném čase

Chcete-li v reálném čase sledovat informace o procesech, které mají otevřená připojení TCP v zadaném rozsahu portů od 1 do 1024, můžete použít následující příkaz:

$ lsof -i tcp: 1 - 1024 -r3

Monitorujte všechny porty v reálném čase

Pomocí příkazu LSOF můžete sledovat všechna síťová připojení v reálném čase. Chcete například nepřetržitě sledovat a každých 5 sekund zobrazovat informace o síťových připojeních v reálném čase.

$ lsof -i -r5

Následující výstup obsahuje podrobnosti o procesech a jejich přidružených síťových zásuvkách v reálném čase po každých 5 sekundách:

Podobně můžete také sledovat pouze „navázaná“ spojení pomocí příkazu LSOF:

$ lsof -i -A -r10

Závěr

V tomto tutoriálu jsme se naučili monitorovat porty v reálném čase pomocí příkazu LSOF. Tento příkaz může také pomoci správcům systému a dalším uživatelům Linuxu monitorovat síťová připojení, včetně všech aktivních nebo otevřených portů. Doufáme, že vám tato příručka pomůže pochopit, jak používat příkaz LSOF s různými možnostmi a sledovat různé porty a procesy v reálném čase.