- Как узнать, какие порты открыты в Windows
- Как проверить открытые порты в Windows
- Как в Windows узнать, какая программа прослушивает порт
- Получение списка открытых портов и прослушивающих порты служб
- Как узнать, какие TCP/IP-порты используют приложения Windows
- Встроенные инструменты контроля портов
- Просмотр портов вместе с именами процессов
- Просмотр портов вместе с идентификаторами процессов
- Использование NirSoft CurrPorts
- Information Security Squad
- 🔍 Какой процесс прослушивает порт на Windows?
- Как узнать, какой процесс прослушивает определенный порт в операционной системе Windows?
- 1. Использование командной строки
- 2. Использование PowerShell Get-Process
- Заключение
- Как узнать, какой процесс прослушивает определенный порт в Windows.
Как узнать, какие порты открыты в Windows
Как проверить открытые порты в Windows
В Windows есть команда netstat, которая отображает статистику протокола и текущих сетевых подключений TCP/IP.
Используя команду netstat со следующими ключами, можно посмотреть информацию о всех подключениях и прослушиваемых портах в Windows:
Как в Windows узнать, какая программа прослушивает порт
Открытых для прослушивания портов может оказаться достаточно много и обычно они используются легитимными программами. Поэтому при анализе полученных данных также важно знать, какая именно служба прослушивает определённый порт.
Для поиска службы, можно добавить к приведённой команде опцию -b, которая означает показать исполнимый файл, прослушивающий порт:
Также имеется альтернативный способ определения исполнимого файла, привязанного к порту. Для него откройте Командную строку Windows. Для этого нажмите сочетание клавиш Win+x, там выберите Windows PowerShell (Администратор). В открывшемся окне введите:
чтобы перейти в обычную командную строку.
Там запустите команду вида:
Эта команда найдёт службы, которые прослушивают 80 порт. Чтобы найти информацию о другом порте, замените в команде цифру 80 на интересующий вас порт.
Пример вывода в моём случае:
Запись 0.0.0.0:80 означает, порт 80 для любых IPv4 адресов прослушивает служба httpd.exe (веб-сервер Apache). А запись [::]:80 — означает, что порт 80 для любых IPv6 адресов прослушивает та же самая служба httpd.exe (веб-сервер Apache). Мы ещё вернёмся к более подробному анализу данных далее в этой статье.
Менять порт в длинной команде не всегда удобно, поэтому рекомендую создать текстовый файл с именем port.bat, в этот файл скопируйте:
Сохраните и закройте этот файл.
Теперь в Windows PowerShell или в командной строке Windows с помощью команды cd перейдите в папку, куда вы сохранили файл. Например, я его сохранил в папку C:\Users\Alex\Documents\, тогда для перехода туда я выполняю:
Теперь запустите файл командой вида:
Где [ПОРТ] замените на интересующий вас порт, например, меня интересует порт 80, тогда:
Получение списка открытых портов и прослушивающих порты служб
Разумеется, составить полный список всех ненужных служб невозможно. Набор запущенных по умолчанию служб различается от системы к системе и даже между двумя версиями MS Windows XP с разными пакетами обновлений. А если вам приходится укреплять безопасность системы, настроенной кем-то другим, набор запущенных служб, без сомнения, отличается от списка по умолчанию. Что еще хуже, время от времени появляются новые службы, расширяя количество служб, которые могут быть запущены на каждом конкретном компьютере.
В Microsoft Windows существует команда терминала netstat, которая позволяет получить список открытых портов. Функциональность стандартной версии netstat для MS Windows несколько ограничена по сравнению с аналогичной командой для систем Unix, но она все же предусматривает использование суффиксов для получения списка служб, прослушивающих порты:
Результат выполнения этой команды должен выглядеть примерно так:
… где вместо «hostname», разумеется, стоит имя хоста данной системы.
Теперь вы знаете, как…
…а знать – это уже полдела. Разумеется, для решения проблемы необходимо применить эти знания на практике. В статье Настройка межсетевого экрана (брандмауэра) в Windows XP Professional SP2 есть несколько полезных советов на эту тему.
Теперь, когда вы знаете, как получить список открытых в системе портов и выяснить, какие из ненужных служб на данный момент запущены, вы сможете остановить эти службы и закрыть порты. Поскольку конкретный порядок действий для выполнения этой задачи различается от системы к системе и обычно оказывается несколько более сложным, чем получение информации об открытых портах, подробную инструкцию я опубликую в другой раз.
Как узнать, какие TCP/IP-порты используют приложения Windows
IP-адрес указывает на компьютер или другое сетевое устройство. Когда одно устройство отправляет трафик другому, IP-адрес используется для маршрутизации трафика в соответствующее место. Как только трафик достигнет нужного места, устройство должно знать, какое приложение или сервис отправляет трафик.
Если IP-адрес сродни почтовому адресу, порт является чем-то вроде имени человека по этому месту жительства, который получает почту. По большей части вам не нужно беспокоиться о портах. Но время от времени вы можете столкнуться с приложением, которое настроено на прослушивание трафика на том порту, который уже использует другое приложении. В этом случае вам нужно будет определить приложение, которое уже использует этот порт.
Существует несколько способов узнать, какое приложение блокирует порт, но мы собираемся пройти через пару встроенных способов, которые используют командную строку, а затем показать вам отличное бесплатное приложение, которое упростит работу, Все эти методы должны работать независимо от того, какую версию Windows вы используете.
Встроенные инструменты контроля портов
Мы предлагаем две команды, чтобы показать список. В первом списке отображаются активные порты вместе с именем процесса, который их использует. В большинстве случаев эта команда будет работать нормально. Иногда, однако, имя процесса не поможет вам определить, какое приложение или служба фактически использует порт. В таком случае вам нужно будет перечислить активные порты вместе со номерами идентификатора процессов, а затем просмотреть эти процессы в диспетчере задач.
Просмотр портов вместе с именами процессов
Во-первых, вам нужно открыть командную строку в режиме администратора. Нажмите «Поиск», а затем введите «командная» в поле поиска. Когда вы увидите «Командная строка» в результатах, щелкните его правой кнопкой мыши и выберите «Запуск от имени администратора».
В командной строке введите следующий текст и нажмите «Ввод»:
После того, как вы нажмете Enter , результаты могут занять минуту или две для полного отображения, поэтому будьте терпеливы. Прокрутите список, чтобы найти порт (который указан после двоеточия справа от локального IP-адреса), и вы увидите имя процесса, использующего этого порт.
Если вы хотите сделать это немного проще, вы также можете выгрузить результаты команды в текстовый файл. Затем вы можете просто найти номер порта в текстовом файле.
Здесь, например, вы можете видеть, что порт 62020 связан процессом Skype4Life.exe. Skype – это приложение для общения между пользователями, поэтому мы можем предположить, что этот порт фактически связан процессом, который регулярно проверяет наличие обновлений для приложения.
Просмотр портов вместе с идентификаторами процессов
Если имя процесса для номера порта, который вы просматриваете, затрудняет определение того, какому приложению он соответствует, вы можете попробовать версию команды, которая показывает идентификаторы процессов (PID), а не имена. Введите следующий текст в командной строке, а затем нажмите Enter :
В столбце справа справа перечислены PID, поэтому просто найдите тот, который связан с портом, который вы пытаетесь устранить.
Затем откройте диспетчер задач, щелкнув правой кнопкой мыши любое открытое пространство на панели задач и выбрав «Диспетчер задач».
Если вы используете Windows 8 или 10, перейдите на вкладку «Подробности» в диспетчере задач. В более старых версиях Windows вы увидите эту информацию на вкладке «Процессы». Отсортируйте список процессов по столбцу «ИД процесса» и найдите PID, связанный с портом, который вы исследуете. Возможно, вы сможете узнать больше о том, какое приложение или служба использует указанный порт, посмотрев столбец «Описание».
Если нет, щелкните процесс правой кнопкой мыши и выберите «Открыть расположение файла». Расположение файла, скорее всего, даст вам подсказку о том, какое приложение задействовано.
Использование NirSoft CurrPorts
Если вы не любите командную строку или предпочли бы использовать простую утилиту, чтобы сделать всё это за один шаг, мы рекомендуем отличный бесплатный CurrPorts. Загрузите инструмент. Только убедитесь, что вы получили правильную версию (обычная версия для 32-разрядной версии Windows, а версия x64 – для 64-разрядной Windows). Это портативное приложение, поэтому вам не нужно его устанавливать. Просто распакуйте папку загрузки и запустите исполняемый файл.
В окне CurrPorts отсортируйте по столбцу «Локальный порт», найдите порт, который вы исследуете, и вы можете увидеть всё: имя процесса, ID, порт, полный путь к процессу и т.д.
Чтобы сделать это ещё проще, дважды щелкните любой процесс, чтобы увидеть каждую деталь в одном окне.
Когда вы определите, какое приложение или служба связаны с порт, – Вы сможете решить, как его использовать. Если это приложение, то можно указать другой номер порта. Если это сервис или у вас нет возможности указать другой номер порта – вероятно, Вам придётся остановить службу или удалить приложение.
Information Security Squad
stay tune stay secure
- Home
- 2020
- Октябрь
- 29
- 🔍 Какой процесс прослушивает порт на Windows?
🔍 Какой процесс прослушивает порт на Windows?
Как узнать, какой процесс прослушивает определенный порт в операционной системе Windows?
Эта статья поможет вам найти имя процесса, прослушивающего определенный порт в системе Windows.
Иногда при установке приложения вы могли столкнуться с проблемой типа «port in use».
Вы можете выбрать один из двух способов, указанных ниже.
Первый метод использует netstat, чтобы найти pid процесса, прослушивающего определенный порт, затем используется список задач, чтобы найти имя процесса по pid.
1. Использование командной строки
Используйте следующую команду, чтобы узнать идентификатор процесса (pid), прослушивающий порт 433 .
Вы можете изменить это значение для поиска другого порта.
В последнем столбце выходных данных отображается идентификатор процесса.
Приведенный выше вывод показывает, что pid равен 2189 и 4620 для процессов, прослушивающих порт 443.
Используйте этот идентификатор процесса с командой списка задач, чтобы найти имя процесса.
В результатах вы увидите имя процесса, как показано на скриншоте выше.
2. Использование PowerShell Get-Process
Второй метод использует команду PowerShell для определения процесса, запущенного на определенном порту в Windows.
Запустите терминал PowerShell и выполните следующую команду, чтобы найти имя процесса, работающего на порту 443.
Вы можете изменить номер порта, чтобы проверить наличие других портов.
В результатах вы увидите имя процесса, как показано на скриншоте выше.
Заключение
В этом руководстве вы узнали два метода поиска имени процесса, прослушивающего определенный порт в системе Windows.
Как узнать, какой процесс прослушивает определенный порт в Windows.
Есть ли способ определить, какое приложение прослушивает определенный порт? Как узнать, используется ли конкретный порт на ПК с Windows? В этом руководстве мы покажем , как узнать, какой процесс прослушивает данный порт в Windows 10, с помощью командной строки или PowerShell.
Часть 1: Определим идентификатор ID процесса, использующего определенный порт.
Запускаем командную строку и выполним следующую команду:
В выводе команды мы увидим список TCP и UDP портов, которые в настоящее время прослушиваются на компьютере.
В нашем случае TCP-порт 21 используется процессом с идентификатором процесса (PID) 5000.
Аналогично можно узнать какой процесс прослушивает TCP-порт 21 через PowerShell.
Открываем Windows PowerShell и вводим команду:
где вместо ХХХ вводим номер порта – 21, в итоге выглядит так:
Для 21 UDP-порта команда следующая:
Часть 2: Узнать имя процесса, зная ID.
Вы уже обратили внимание, что в выводе команды PowerShell мы видим столбец ProcessName, который содержит имя процесса. Но если мы ищем через командную строку, то данной информации нет, кроме значения PID.
Чтобы узнать имя процесса по его идентификатору, откройте диспетчер задач и перейдите на вкладку «Подробности». Отсортируйте список процессов, щелкнув заголовок столбца с меткой «ИД процесса». В нашем случае ищем процесс с PID 5000, – это FileZilla Server.
Таким образом мы исследовали какой порт и какое приложение, сервис используются Windows.