В Debian (и других Linux-системах) можно проверить открытые порты с помощью нескольких команд. Вот основные из них:
1. ss (современная замена netstat)
ss -tulnpОпции:
-t— TCP-порты-u— UDP-порты-l— только слушающие порты-n— показывать числовые адреса (без разрешения имён)-p— отображать процесс, использующий порт
Пример вывода:
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
tcp LISTEN 0 80 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=1234,fd=6)) 2. netstat (устаревший, но всё ещё используется)
netstat -tulnpОпции:
- Аналогичны
ss(-t,-u,-l,-n,-p).
⚠️ В некоторых современных дистрибутивах
netstatможет отсутствовать (входит в пакетnet-tools, который считается устаревшим).
3. lsof (более детальная информация)
sudo lsof -i -P -n | grep LISTENОпции:
-i— сетевые соединения-P— не преобразовывать номера портов в имена служб-n— не разрешать имена хостов
Пример вывода:
nginx 1234 root 6u IPv4 12345 0t0 TCP *:80 (LISTEN) 4. nmap (проверка извне)
Если нужно проверить открытые порты снаружи (например, на другом компьютере):
sudo apt install nmap # если не установлен
nmap -sT -p- localhostОпции:
-sT— TCP-сканирование-p-— все порты (1-65535)
Вывод:
- Лучший вариант —
ss -tulnp(быстро и современно). - Если нужны детали о процессах —
sudo lsof -i -P -n | grep LISTEN. - Для внешней проверки —
nmap.
Если у вас нет ss или lsof, установите их:
sudo apt install iproute2 lsof nmap