Poznejte svou síť zevnitř tím, že budete pravidelně kontrolovat otevřené porty pomocí těchto příkazů Linuxu.

Otevřené síťové porty jsou nejjednoduššími vstupními body do vaší sítě. Někdy mohou na portech, které jsou externě viditelné z internetu, běžet nežádoucí služby. V případě, že jsou tyto služby zranitelné, bude vaše síť neustále hrozit útokem, protože každý den je celý internet hromadně prohledáván na zranitelné služby na otevřených portech.

Zjistěte, jak můžete skenovat a zobrazovat otevřené porty na systémech Linux, abyste mohli chránit svou síť před hrozbami.

Co jsou síťové porty?

Síťové porty jsou logické přístupové body vašeho systému, které lze použít jako kanál pro hostování více služeb. Port je reprezentován 16bitovým celým číslem, takže nejvyšší číslo portu je 65535.

Porty si můžete představit jako okna a dveře domu – v podstatě všechny různé vstupní body do domu nebo počítače. Porty jsou tří typů: systémové porty (1-1023), registrované porty (1024-49151) a efemérní neboli dynamické porty (49152-65535).

instagram viewer

Když spustíte aplikaci, která vyžaduje připojení k internetu, používá dynamické porty k přenosu a příjmu dat přes síť. Když však spustíte webový server nebo server SSH, obvykle se naváže na systémové porty nebo registrované porty.

Pro webové servery obsluhující HTTP je výchozí systémový port 80 a pro SSH je to 22. Tyto předpisy, jako jsou rozsahy portů, jsou vyvinuty organizací IANA (Internet Assigned Numbers Authority). Můžete projít RFC týkající se portů získat úplný seznam všech portů a jejich funkcí.

Je důležité, abyste věděli, nejčastěji zranitelné porty abyste se mohli ujistit, že jsou zavřené nebo chráněné.

1. Zkontrolujte otevřené porty pomocí netstat

netstat je populární nástroj, který můžete použít k zobrazení statistik sítě vašeho systému Linux. Je součástí balíčku net-tools.

Balíček net-tools je nyní odepsán z důvodu nedostatečné údržby ze strany vývojáře. To je také důvod, proč se můžete setkat chyba "ifconfig: příkaz nenalezen". při spuštění oblíbeného příkazu ifconfig v systému Linux.

Na moderních systémech tedy možná budete muset nejprve nainstalovat balíček net-tools a poté budete moci spustit příkaz netstat. Zde je návod, jak zkontrolovat otevřené porty pomocí netstat:

netstat -tuln

Vysvětlení příkazu:

  • -t zobrazuje TCP porty.
  • -u zobrazuje UDP porty.
  • -l zobrazuje naslouchající porty. Nahraďte toto za A pokud chcete vidět všechny porty, bez ohledu na jejich stav.
  • -n zobrazuje číselnou hodnotu portů místo rozlišení na názvy služeb. Například místo SSH zobrazte port 22, tedy službu běžící na portu.

2. Zkontrolujte otevřené porty pomocí ss

ss je moderní ekvivalent nástroje netstat. Toto najdete předinstalované ve všech moderních distribucích Linuxu. Syntaxe pro kontrolu otevřených portů pomocí ss je stejná jako u netstat.

Zde je návod, jak zkontrolovat otevřené porty pomocí ss:

ss -tuln

Vysvětlení příkazu:

  • -t zobrazuje TCP porty.
  • -u zobrazuje UDP porty.
  • -l zobrazuje naslouchající porty. Nahraďte toto za A pokud chcete vidět všechny porty, bez ohledu na jejich stav.
  • -n zobrazuje číselnou hodnotu portů místo rozlišení na názvy služeb. Například místo FTP zobrazte port 21, tedy službu běžící na portu.

3. Zkontrolujte otevřené porty pomocí Nmap

Nmap je jedním z nejpopulárnějších nástrojů v oblasti kybernetické bezpečnosti a sítí. Je to běžné jméno, pokud jde o testování penetrace zabezpečení sítě. Jeho primárním případem použití je skenování portů, takže nejenže získáte informace o portech otevřených ve vašem systému, ale také o tom, zda jsou zranitelné a zneužitelné.

Navíc, pokud chcete zkontrolovat otevřené porty ve vzdáleném systému s nastaveným IDS/IPS a firewally, nemusíte se bát, protože Nmap také dokáže obejít firewally a IDS/IPS pomocí správných přepínačů.

Podívejte se na toto komplexní průvodce na Nmap pro začátečníky prozkoumat různé funkce Nmap a jak je používat. Ačkoli můžete, nedoporučuje se zkoušet a obcházet firewally, protože to není úplně spolehlivé, takže je nejlepší, když SSH na vzdálený server a pak na něm spustíte Nmap lokálně.

Zde je příkaz pro kontrolu otevřených portů pomocí Nmap:

nmap -sTU -sV  -T 5 --min.rychlost 9000 --min.paralelnost 9000 --počáteční-rtt-timeout 50ms --max-rtt-timeout 3000ms --max-retries 50 -Pn --disable-arp-ping -n -- script vuln, exploit, auth -v -oX 

Vysvětlení příkazu:

  • -sTU nastaví typ skenování na TCP Connect a UDP sken.
  • -T 5 nastaví šablonu časování na agresivní pro bleskově rychlé skenování (nedoporučuje se na nechráněném systému, protože to může vést k útoku DoS).
  • -sV zapne servisní skenování.
  • --minimální sazba 9000 říká Nmapu, aby poslal 9000 paketů za sekundu.
  • --initial-rtt-timeout 50 ms řekne Nmapu, aby zpočátku čekal 50 ms na odpověď na každý SYN paket, který odešle.
  • --max-rtt-timeout 3000 ms řekne Nmapu, aby na odpověď čekal maximálně 3000 ms.
  • --min-paralelnost 9000 nastaví minimální počet souběžných spuštění skriptu na 9000.
  • --maximální počet opakování 50 řekne Nmapu, aby se 50krát pokusil o připojení k portu.
  • -Pn deaktivuje ping sondování.
  • --disable-arp-ping deaktivuje sondování ARP.
  • -n deaktivuje překlad DNS.
  • --script vuln, exploit, auth spouští tři skripty pro testování různých typů zranitelností v nalezených portech.
  • -proti vrátí podrobný výstup.
  • -vůl uloží výsledky do souboru XML.
  • -6 Volitelný parametr pro skenování adres IPv6.

4. Zkontrolujte otevřené porty pomocí lsof

Příkaz lsof v Linuxu se používá k výpisu otevřených souborů. Pokud k němu však přidáte několik přepínačů, budete moci vidět otevřená internetová připojení a porty na vašem místním počítači. Zde je návod, jak zkontrolovat otevřené porty pomocí lsof:

lsof -i -n

Vysvětlení příkazu:

  • -i uvádí všechny síťové a internetové soubory.
  • -n neřeší názvy hostitelů.

5. Zkontrolujte otevřené porty pomocí netcat

netcat je nástroj příkazového řádku, který vám umožňuje číst a zapisovat z a do připojení TCP/UDP. Všimněte si, že toto je pouze jedna vlastnost netcatu. Můžete se podívat na jeho manuálovou stránku pomocí muž netcat prozkoumat všechny jeho funkce a jak je používat.

Zde je návod, jak můžete použít netcat ke skenování otevřených portů:

nc -zv  | grep -v "odmítl"

Vysvětlení příkazu:

  • -z nastaví netcat do režimu skenování.
  • -proti vrátí podrobný výstup.
  • grep -v "odmítl" vrátí výstupní řádky bez slova „odmítl“. To má zabránit tomu, aby se terminál ucpal zprávami „spojení odmítnuto“, když netcat nepřijímá žádný výstup z portu.
  • 2>&1: Toto je volitelný přepínač, který možná budete muset zapnout, aby grep fungoval při spuštění netcat v podrobném režimu. netcat vrátí výstup do stderr (označeného 2). Chcete-li tedy výstup grepu, museli byste přesměrovat stderr na stdout (označený 1) a poté jej převést do grep.

Čím hlouběji svou síť znáte, tím lépe ji můžete bránit

Vědět, které porty jsou otevřené a jaké služby běží na vašem systému, je skvělým krokem k jeho ochraně před potenciálními vnějšími útoky. To vám umožní vyhledat a vypnout nepotřebné služby, najít zastaralé služby a také zjistěte, zda na vašem počítači běží nějaké škodlivé soubory, jako jsou backdoors bind nebo reverzní shell Systém.

Pokud to se zabezpečením sítě myslíte vážně, měli byste zvážit instalaci a nastavení řešení IDS, které bude monitorovat veškerou aktivitu ve vaší síti a vynucovat sady pravidel, abyste zabránili nevyžádaným připojením.