В мире Linux открытые порты играют решающую роль в обеспечении сетевого взаимодействия. Понимание того, как управлять открытыми портами и манипулировать ими, необходимо для эффективного администрирования системы. В этой статье блога мы рассмотрим различные методы получения списка открытых портов в системе Linux, попутно предоставляя разговорные объяснения и практические примеры кода.
Метод 1: использование netstat
Netstat — это популярный инструмент командной строки, который отображает активные сетевые подключения и прослушиваемые порты. Чтобы просмотреть список открытых портов с помощью netstat, откройте терминал и введите следующую команду:
netstat -tuln
Появится список открытых портов вместе со связанными процессами и соответствующим протоколом (TCP или UDP). В этой команде используются следующие параметры:
-t: отображает TCP-порты.-u: отображает порты UDP.-l: отображаются только прослушиваемые порты.-n: вместо названий служб отображаются номера портов.
Метод 2: использование ss
Подобно команде netstat, команда ss предоставляет подробную статистику сокетов, включая открытые порты. Чтобы просмотреть список открытых портов с помощью ss, откройте терминал и введите следующую команду:
ss -tuln
Параметры, используемые в этой команде, аналогичны опциям netstat и служат той же цели.
Метод 3: использование lsof
Команду lsof (список открытых файлов) также можно использовать для получения списка открытых портов. Он предоставляет информацию о файлах и процессах, которые в данный момент открыты. Чтобы просмотреть список открытых портов с помощью lsof, откройте терминал и введите следующую команду:
sudo lsof -i
Появится список открытых портов вместе с соответствующими процессами. Параметр -iфильтрует выходные данные, чтобы отображались только сетевые подключения.
Метод 4: использование nmap
Nmap — мощный инструмент сетевого сканирования, который также можно использовать для получения списка открытых портов в системе Linux. Чтобы установить nmap, используйте менеджер пакетов, соответствующий вашему дистрибутиву Linux. После установки откройте терминал и введите следующую команду:
nmap localhost
Эта команда просканирует локальный компьютер и отобразит список открытых портов. Вы можете заменить localhostна IP-адрес или имя хоста удаленного компьютера для сканирования портов на другом устройстве.
Метод 5: проверка файловой системы /proc
Linux предоставляет виртуальную файловую систему под названием /proc, которая содержит информацию о запущенных процессах. Чтобы получить список открытых портов, использующих файловую систему /proc, откройте терминал и введите следующую команду:
sudo cat /proc/net/tcp
Появится полный список TCP-соединений, включая открытые порты и соответствующие им процессы.
В этой статье мы рассмотрели несколько методов получения списка открытых портов в системе Linux. Используя такие команды, как netstat, ss, lsof, nmap и исследуя файловую систему /proc, вы можете получить ценную информацию о сетевых подключениях и процессах, выполняемых на вашем компьютере. Понимание открытых портов необходимо для устранения неполадок в сети, анализа безопасности и системного администрирования.