Ako skontrolovať otvorené/zatvorené porty v počítači?
Použil som netstat -a
v príkazovom riadku.
Existuje niekoľko parametrov netstat
, ktoré sú na to užitočné:
-l
alebo --listening
zobrazuje iba zásuvky, ktoré práve počúvajú prichádzajúce spojenie.-a
alebo --all
zobrazí všetky aktuálne používané sokety.-t
alebo --tcp
zobrazuje zásuvky tcp.-u
alebo --udp
zobrazuje zásuvky udp.-n
alebo --numeric
zobrazuje hostiteľov a porty ako čísla namiesto prekladania v dns a hľadania v /etc/services.Ak chcete získať to, čo chcete, použite ich kombináciu. Ak chcete zistiť, ktoré čísla portov sa práve používajú, použite jeden z nich:
netstat -atn # Pre tcp
netstat -aun # Pre udp
netstat -atun # Pre oba typy
Vo výstupe sú všetky uvedené porty používané, buď počúvajúce na prichádzajúce spojenie alebo pripojené k partnerovi**, všetky ostatné sú zatvorené. Porty TCP a UDP sú široké 16 bitov (majú rozsah 1-65535)
** Môžu sa tiež pripájať/odpájať od partnera.
Môžete použiť tento príkaz:
netstat -tulnp | grep <port no>
Ak sa zobrazí nejaký proces, jeho použitie. Ak nie je žiadny výstup, je zatvorený (nepoužíva sa).
Je stav portu "LISTENING" označený, že port je otvorený?
Áno. Znamená to, že nejaká služba počúva na tomto porte vo vašom počítači pre prichádzajúce spojenie, t. j. tento port je otvorený pre nadväzovanie nových spojení.
Akýkoľvek port, ktorý nie je zobrazený vo výstupe, znamená, že je zatvorený?
Áno. Nezabudnite, že netstat -a
zobrazí všetky aktívne (posluchajúce) a pasívne (nepočúvajúce) spojenia, t. j. porty, ktoré sa správajú ako serverové (niektoré služby počúvajú na týchto portoch pre spojenia z iného počítača/procesu) aj nadviazané (na týchto portoch sa nadväzujú spojenia bez ohľadu na to, že hostiteľ/služba môže byť serverom alebo klientom)
Všetky porty TCP a UDP patria do kategórie nazývanej sokety a tých je celá rada. Ak chcete zobraziť informácie o soketoch, môžete použiť príkaz man ss
.