Как узнать какой порт использует программа
Перейти к содержимому

Как узнать какой порт использует программа

  • автор:

Как определить программу, использующую тот или иной порт TCP/IP

П рограммы, способные соединяться с интернетом при подключении к сети используют так называемые порты — цифровые адреса сетевых устройств. Иногда при тонкой настройке программ или устройств возникает необходимость узнать, какое приложение занимает тот или иной порт, например с целью освободить его для другой программы. В Windows сделать это очень просто. Основных вариантов два: с помощью обычной командной строки и с помощью сторонних утилит.

В командной строке

Для отображения текущих соединений TCP/IP в Windows используется штатная консольная утилита netstat. Она может принимать более 10 параметров, но для того чтобы узнать какой порт занят каким процессом, вполне хватит трех: -a, -o и –n. Для начала необходимо получить список всех текущих соединений. От имени администратора откройте консоль CMD и выполните эту команду:

netstat

Данные будут выведены в пять колонок: имя, локальный адрес, внешний адрес, состояние и идентификатор процесса (PID). Отыщите нужный вам порт и посмотрите, с каким PID он связан. Теперь откройте Диспетчер задач, переключитесь на вкладку «Процессы» (в Windows 7) или «Подробности» (в Windows 8.1) и найдите в списке этот PID. А найдя его, вы идентифицируете и процесс.

Процессы

Примечание: если в Диспетчере задач у вас не отображается ИД процесса, включите его через меню «Вид» -> «Выбрать столбцы».

В утилите CurPorts

Второй способ более прост, но для определения занимающего порт процесса вам понадобится сторонняя утилита CurPorts. Она бесплатна, проста и не требует установки.

CurPorts

Если её запустить, в окошко будут выведены не только порты и связанные с ним процессы и сервисы, но и пути к исполняемым файлам, их описания, версии, данные о разработчике и много другой полезной информации.

Какая программа слушает определенный порт в Windows?

date

26.10.2022

user

itpro

directory

Windows 10, Windows Server 2019

comments

комментария 2

При запуске новых сервисов в Windows, вы можете обнаружить что нужный порт уже занят (слушается) другой программой (процессом). Разберемся, как определить какая программ прослушивает определенный TCP или UDP порт в Windows.

Например, вы не можете запустить сайт IIS на стандартном 80 порту в Windows, т.к. этот порт сейчас занят (при запуске нескольких сайтов в IIS вы можете запускать их на одном или на разных портах). Как найти службу или процесс, который занял этот порт и завершить его?

Чтобы вывести полный список TCP и UDP портов, которые прослушиваются вашим компьютером, выполните команду:

netstat -aon| find «LIST»

Или вы можете сразу указать искомый номер порта:

netstat -aon | findstr «:80» | findstr «LISTENING»

Используемые параметры команды netstat:

  • a – показывать сетевые подключения и открытые порты
  • o – выводить идентфикатор професса (PID) для каждого подключения
  • n – показывать адреса и номера портов в числовом форматер

По выводу данной команды вы можете определить, что 80 порт TCP прослушивается (статус LISTENING ) процессом с PID 16124.

netstat найти программу, которая заняла порт

Вы можете определить исполняемый exe файл процесса с этим PID с помощью Task Manager или с помощью команды:

tasklist /FI «PID eq 16124»

tasklist - найти процесс, который слушает порт в windows

Можно заменить все указанные выше команды одной:

for /f «tokens=5» %a in (‘netstat -aon ^| findstr :80’) do tasklist /FI «PID eq %a»

С помощью однострочной PowerShell команды можно сразу получить имя процесса, который прослушивает:

  • TCP порт: Get-Process -Id (Get-NetTCPConnection -LocalPort 80).OwningProcess
  • UDP порт: Get-Process -Id (Get-NetUDPEndpoint -LocalPort 53).OwningProcess

powershell найти процесс, который слушает TCP порт

См. статью про просмотр сетевых подключений в Windows с помощью PowerShell.

Можно сразу завершить этот процесс, отправив результаты через pipe в командлет Stop-Process:

Get-Process -Id (Get-NetTCPConnection -LocalPort 80).OwningProcess| Stop-Process

Проверьте, что порт 80 теперь свободен:

проверить что порт свободен

Чтобы быстрой найти путь к исполняемому файлу процесса в Windows, используйте команды:

dir tiny.exe /s /p

Или можно для поиска файла использовать встроенную команду where :

В нашем случае мы нашли, что исполняемый файл tiny.exe (легкий HTTP сервер), который слушает 80 порт, находится в каталоге c:\Temp\tinyweb\tinyweb-1-94

команда позволяет найти путь к exe файу в windows

Также для просмотра списка процессов и используемых ими TCP портов в Windows можно использовать утилиту TCPView (https://learn.microsoft.com/en-us/sysinternals/downloads/tcpview).

Утилита TCPView показывает процессы и открытые ими порты

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Читайте далее в разделе Windows 10 Windows Server 2019

page

page

page

Установка и настройка OpenVPN сервера под Windows

Как сбросить пароль локального администратора в Windows?

Настройка двухфакторной аутентификации (2FA) в Windows с помощью MultiOTP

Установка KMS сервера vlmcsd на Linux для активации Windows и Office

Какой процесс слушает порт в Linux?

date

17.05.2023

user

itpro

directory

Linux

comments

Комментариев пока нет

В этой статье мы рассмотрим, как найти процесс, который слушает определенный порт в Linux.

Можно получить информацию о процесс, который слушает определенный порт командой:

$ sudo lsof -i :8000

В этом примере видно, что порт 8000 занят процессом python3.

lsof - найти процесс, который занял порт в linux

Можно вывести список всех запущенных процессов Linux, который используют любые TCP/UDP порты:

$ sudo netstat -lntup| grep LISTEN

Мы используем следующие ключи:

  • -l – показать тольо прослушиваемые порты
  • -n – показать IP адреса и номера портов в числовом виде и не пытаться их резолвить (соответствие номеров портов и название служб содержится в файле /etc/services)
  • -t – показать открытые TCP порты
  • -u – показать UDP порты
  • -p – показать название процесс, который прослушивает порт

netstat -lntup- список открытых сокетов в linux

Мы нашли PID процесса ( 72005 ), который использует порт и теперь можно вывести информацию о том, как он запущен:

$ ps -aux | grep 72005

найти команду, которая запустила процесс

В этом примере видно, что процесс запущен вручную пользователем root с помощью команды python3 -m http.server (используется для запуска простого HTTP сервера на python для публикации текущего каталога).

Чтобы быстро завершить процесс, который слушает нужный вам порт и освободить его, выполните:

$ sudo kill -9 72005

Проверьте, что порт теперь свободен:

$ sudo lsof -i :8000

Ранее мы показывали, как найти программу, которую слушает определенный порт в Windows.

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Читайте далее в разделе Linux

page

page

page

Установка и настройка прокси сервера Squid в Linux

Мониторинг срока регистрации (освобождения) домена в Zabbix

Управление конфигурацией Windows через Ansible

Увеличить размер раздела диска в Ubuntu

Как посмотреть какие порты открыты на компьютере, и кто их использует

Думаю, если Вы нашли эту статью и собираетесь проверить какие порты открыты на ПК, то объяснять что такое порты, для чего они нужны и как используются различными программами, не нужно. Перейдем сразу к делу.

Смотреть видео:

Чтобы проверить состояние портов, необходимо открыть командную строку. Для этого используйте шорткат Win+R, в появившемся окошке наберите cmd и нажмите Ввод:

как запустить командную строку

В окне командной строки наберите команду netstat -a (перед знаком минус не забудьте поставить пробел), нажмите Ввод. После быстрого сканирования Вы сможете посмотреть какие сокеты открыты на Вашем ПК и в каком состоянии они находятся:

список открытых портов

Как видим, для каждого активного сокета указывается протокол, локальный и внешний адрес, а также состояние протокола. Вот список и значение самых распространенных состояний:

  • LISTENING – значит, что порт ожидает входящих соединений
  • ESTABLISHED – соединение установлено
  • CLOSE_WAIT – ожидание закрытия вследствие отключения удаленной стороны
  • TIME_WAIT – порт закрыт, но еще ожидает входящие пакеты для обработки
  • SYN_SENT – установка соединения

Интерес представляет конечно же не только получить список сокетов, но и узнать какая программа какой номер порта использует. Для этого в командном окне наберите команду netstat -n -b (пробелы перед знаком минус):

программы с выходом в интернет

Возле номера каждого сокета в квадратных скобках указана программа, которая его использует (исполняемое имя файла).

Если Вы обнаружили, что какой-то порт использует программа, которую Вы не запускали и которая похожа на троян или вирус, то его следует закрыть. Закрыть порт можно при помощи фаервола. Однако гораздо быстрей и эффективней будет использовать небольшую бесплатную программу под названием Windows Worms Doors Cleaner (WWDC), которую Вы можете скачать прямо сейчас (51Kb).

После запуска она покажет список открытых сокетов, которые представляют опасность, и которые специалисты в области информационной защиты настоятельно рекомендуют держать отключенными: 135, 445, 137-139. Чтобы сделать их неактивными, просто нажмите кнопки справа от каждого красного значка:

программа для закрытия опасных портов

После вступлений изменений в силу Вы получите такую картину:

отключение сокетов

Преимущество программы WWDC перед фаерволами состоит в том, что она не просто блокирует открытые порты, но закрывает их, отключая службы, которые их используют. Это, как Вы понимаете, гораздо эффективнее, потому что устраняет источник проблемы, а не симптомы.

  • Как очень просто проверить монитор на битые пиксели
  • Как убрать показ рекламы в скайп
  • Как найти жилье в Грузии? Основные сайты для поиска
  • Онлайн шоппинг: 10 правил безопасности
  • Как пользоваться Скайпом без регистрации и учетной записи

Понравилось? Поделитесь с друзьями!

Сергей Сандаков, 43 года. С 2011 г. пишу обзоры полезных онлайн сервисов и сайтов, программ для ПК. Интересуюсь всем, что происходит в Интернет, и с удовольствием рассказываю об этом своим читателям.

25 комментариев
Алексей 01.07.2022 Используйте netstat -ano | find «LISTENING» и не парьте мозг.

Аристарх 28.08.2020 Очень удобная программа, которая закрывает порты, но создает свой 😉 пользуйтесь ребята на здоровье

Сергей 28.06.2020 топчик помогло

Григорий 25.11.2019 Добрый день. Вы не поможете, не могу настроить файлзиллу, какие-то закавыки в домашней сети. По программе работы портов роутера определяется, что закрыт порт 21, через который идет FTP. А как проверить это? Сделал проверку по командной строке, но там файлзилла подключена по нескольким портам с номерами 50000 и более. А про 21 порт -ничего. Может можно проверить работает ли 21 порт иначе? И если он закрыт, то как его открыть?

Сергей 25.11.2019 Григорий, к сожалению, не помогу. Я слабо разбираюсь в настраивании домашней сети.

Алексей 20.01.2019 Здравствуйте . у меня открыт порт что делать не знаю. как он должен открыт. или закрыт подскажите пожалуйста

Вадим 07.12.2020 по идеи,если Вы хотите чтобы к вашему айпишнику могли подключится,то он должен быть открыт,а если же Вы хотите что бы к вам не могли подключится,то закрыты.

Илья 14.01.2019 А как наоборот открыть порт 1541, 1660?
Рустам 15.06.2017 Сергей, Вы очень мне помогли! Спасибо Вам большое!

игорь 14.06.2017 порт 445 и 137-139 никак не хотят закрываться — в табличке на англ появляется -валидация в регистре не может быть закрыта- и дальше пишет путь файла

Сергей 14.06.2017 Игорь, а Вы под учетной записью администратора находитесь?

игорь 14.06.2017 я вашу программу открываю как администратор а так я единственный пользователь компа т.к. он домашний. нажимаю на клавиши закрыть порты 135 445 и 137-139 и после кучи табличек эти кнопки делаются неактивными. перегружаю комп- эти порты в вашей программе опять горят красными. Раза два повторял процедуру. Что делать?

Сергей 16.06.2017 Запустить от ИМЕНИ АДМИНИСТРАТОРА.
Ольга 06.01.2018 У меня то же самое, что и у Игоря((( Вхожу как администратор.

игорь 15.06.2017 Может быть дадите свой адрес электронной почты и я заскриншотю эти кучу таблиц на англ в процессе установки и вам перешлю? Можете скинуть ваш адрес прямо мне на электронку, оформленную при регистрации

fyf 20.03.2020 порт 445 и 137-139 — их нельзя закрывать, погуглите что это за порты, тогда поймете

Рустам 13.06.2017 Доброе время суток!
Хотел Вас спросить: какую лучше программу установить,
чтобы посмотреть к какому ip адресу подключаются программы
установленные на компе?

Сергей 14.06.2017 Рустам, так при помощи описанного в статье метода как раз это и можно выяснить. Зачем устанавливать какие-то программы?

Рустам 14.06.2017 Доброе время суток!
Сергей, благодарю Вас за исчерпывающий ответ! Спасибо!

Коля 12.03.2020 Возможно уже не актуально для Вас и в тоже время может кому-то понадобится. Данная софтинка не требует установки и покажет все внешние IP к которым на данный момент подключаются ваши запущенные программы: ссылка удалена

Ikr 13.06.2017 При вводе в командную строку netstat -n -b появляется уведомление о необходимости произвести ПОВЫШЕНИЕ. Что делать далее?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *