Tento článek vysvětluje, jak ověřit naslouchající porty a využití portů v systému Linux®.
Použití lsof
příkaz
lsof
Příkaz (List Open Files) vytvoří seznam souborů, které jsou aktuálně otevřené, spolu s procesy, které je otevřely. V kombinaci s grep
příkaz lsof
příkaz může provádět pokročilé vyhledávání a výpisy.
Obecné lsof
příkaz
`lsof -i -P -n`
[root@server-01 ~]# lsof -i -P -n
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
chronyd 799 chrony 5u IPv4 19739 0t0 UDP 127.0.0.1:323
chronyd 799 chrony 6u IPv6 19740 0t0 UDP [::1]:323
sshd 1252 root 5u IPv4 26992 0t0 TCP :22 (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :22 (LISTEN)
Poslední řádek předchozího příkladu ukazuje, že aplikace sshd
naslouchá na portu TCP 22.
Následující seznam ukazuje možnosti v předchozím příkladu příkazu:
-i
:Zobrazí soubory otevřené síťovými (internetovými) připojeními.-n
:Zabrání změně sítí na názvy hostitelů.-P
:Zabrání změně čísel portů na názvy portů pro síťové soubory.
Použití grep
pomocí lsof
příkaz
Použijte lsof
pomocí příkazu grep
příkaz k upřesnění vyhledávání tak, aby zahrnoval pouze řádky s vyhledávacím kritériem LISTEN
.
`lsof -i -P -n | grep (criteria)`
Příklad výstupu:
[root@server-01 ~]# lsof -i -P -n | grep LISTEN
sshd 1252 root 5u IPv4 26992 0t0 TCP :22 (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :22 (LISTEN)
Zadejte port v lsof
hledat
Nakonec můžete určit konkrétní port pro vyhledávání procesů.
`lsof -i :(Port Number)`
[root@server-01 ~]# lsof -i :22
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 1252 root 5u IPv4 26992 0t0 TCP :ssh (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :ssh (LISTEN)
Použití netstat
příkaz
netstat
Příkaz (Network Statistics) zobrazuje síťová připojení, využití portů, protokoly a další informace.
Obecné netstat
příkaz
`netstat -tulpn`
Příklad výstupu:
[root@server-01 ~]# netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1252/sshd
tcp6 0 0 :::22 :::* LISTEN 1252/sshd
udp 0 0 127.0.0.1:323 0.0.0.0:* 799/chronyd
udp6 0 0 ::1:323 :::* 799/chronyd
Následující seznam ukazuje možnosti použité v předchozím příkladu příkazu:
-l
:Zobrazit zásuvky pro poslech.-n
:Zabránit překladu názvů služeb.-p
:Zobrazí seznam názvů procesů, které mají otevřené sokety.-t
:Zobrazit sokety TCP.-u
:Zobrazit zásuvky UPD.
Použití grep
pomocí netstat
příkaz
Použijte netstat
pomocí příkazu grep
příkaz k upřesnění vyhledávání tak, aby zahrnoval pouze řádky s vyhledávacím kritériem LISTEN
.
`netstat -tulpn | grep (Criteria)`
[root@server-01 ~]# netstat -tulpn | grep LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1252/sshd
tcp6 0 0 :::22 :::* LISTEN 1252/sshd
Použití ss
příkaz
ss
Příkaz (Socket Statistics) zobrazí informace týkající se síťového soketu. Můžete také použít ss
místo toho na novějších systémech, protože nyní nahrazuje netstat
příkaz.
Obecné ss
příkaz
`ss -tulwn`
Příklad výstupu:
[root@server-01 ~]# ss -tulwn
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
icmp6 UNCONN 0 0 *:58 *:*
udp UNCONN 0 0 127.0.0.1:323 0.0.0.0:*
udp UNCONN 0 0 [::1]:323 [::]:*
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
tcp LISTEN 0 128 [::]:22 [::]:*
Následující seznam ukazuje možnosti použité v předchozím příkladu příkazu:
-l
Zobrazit zásuvky pro poslech.-n
Zabraňte překládání názvů služeb.-t
Zobrazit sokety TCP.-u
Zobrazit zásuvky UPD.-w
Zobrazit zásuvky RAW.
Použití nmap
příkaz
nmap
Příkaz (Network Mapper) provádí skenování portů a zjišťování hostitele.
Obecné nmap
příkaz
`nmap -sT -O localhost`
[root@server-01 ~]# nmap -sT -O localhost
Starting Nmap 7.70 ( https://nmap.org ) at 2020-06-10 22:49 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00036s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 999 closed ports
PORT STATE SERVICE
22/tcp open ssh
Následující seznam ukazuje možnosti použité v předchozím příkladu příkazu:
-sT
:TCP Connect Scan-O
:Detekce operačního systému