В предыдущей статье мы рассказали о том, что такое прослушивание порта процессом в Линукс. Также мы показали несколько примеров использования утилит netstat и ss. С помощью которых можно было найти процессы, ожидающие подключения по тому или иному порту. Сегодня мы расскажем о том, как использовать утилиты lsof и fuser, чтобы узнать, какой процесс слушает порты. Эти знания включены в DevOps / DevNet курс обучения Баку. И помогут вам быстрее стать востребованным ИТ-специалистом в 2024 году.
Как узнать, какой процесс прослушивает порт, с помощью lsof, DevOps / DevNet курс обучения Баку
Прежде всего, стоит отметить, что утилита lsof имеет более широкое применение. В частности, она позволяет найти файлы и процессы, которые потребляют те или иные ресурсы компьютера. В том числе ее функционал позволяет выводить список процессов, которые слушают выбранный сетевой порт в Linux. Детальнее об этом вам поможет узнать DevOps / DevNet курс торрент Баку на платформе SEDICOMM University.
Синтаксис команды lsof для поиска служб, обращающихся к выбранному порту, выглядит следующим образом — sudo lsof -i :[номер порта], где:
- sudo — команда, указывающая оболочке, что следующий набор команд нужно выполнить с привилегиями суперпользователя (root);
- lsof — команда, вызывающая утилиту;
- -i — опция, указывающая утилите вывести список файлов или процессов, слушающих указанный IP-адрес;
- :[номер порта] — аргумент команды, передающий номер порта после двоеточия в качества целевого IP-адреса.
Стоит отметить, что утилита позволяет проверять таким образом более одного номера порта за раз (до 100). Однако перед каждым из них нужно указывать отдельную опцию -i. Чтобы узнать больше об использовании команды lsof, советуем пройти курсы по DevOps / DevNet онлайн Баку. Тем более, что в 2024 году сделать это можно дистанционно, в режиме онлайн.
Как узнать, какой процесс прослушивает порт, с помощью fuser
Безусловно, получить информацию о процессах, которые прослушивают порты в вашей ОС, можно многими способами. Часть из которых мы уже продемонстрировали в этой и предыдущей статьях. Однако есть еще один способ получить подобную информацию. Для этого можно использовать утилиту fuser, детальнее о которой помогут узнать курсы по DevOps / DevNet бесплатно Баку.
Данный инструмент командной строки имеет следующий синтаксис — sudo fuser [номер порта]/[тип порта], где:
- sudo — команда, указывающая оболочке, что следующий набор команд нужно выполнить с привилегиями суперпользователя;
- fuser — команда, вызывающая утилиту;
- [номер порта] — первый аргумент команды, указывающий номер порта для проверки;
- / — разделитель между аргументами;
- [тип порта] — второй аргумент, указывающий команде тип порта для проверки (TCP или UDP).
Стоит отметить, что по умолчанию утилита fuser выводит вместо названий процессов их идентификаторы. Скорее всего, в работе вам будет удобнее, все же, использовать названия (имена) служб, слушающих порты. Преобразовать PID в название поможет следующая команда — sudo ps -p [PID] -o comm=. Узнать больше о возможностях команды ps в Linux, ее опциях и аргументах помогут курсы системного администрирования на платформе SEDICOMM University.
Скорее всего, для начала вам будет более, чем достаточно уметь использовать утилиты netstat, ss, lsof и fuser. Чтобы легко находить файлы и программы, которые подключаются к каким-либо портам TCP и UDP. Следовательно, вы сможете легко отслеживать любые подключения. А значит — решать целый спектр задач в сфере сетевого и системного администрирования.
Команда SEDICOMM University: Академия Cisco, Linux Professional Institute, Python Institute.