Проверка открытых портов на Windows 10 — задача, с которой рано или поздно сталкивается каждый пользователь, который хочет убедиться в безопасности системы или настроить сетевое взаимодействие. Открытые порты могут быть уязвимы для атак, а закрытые — блокировать работу программ. К счастью, в арсенале Windows есть встроенные инструменты, которые позволяют быстро получить эту информацию.
Самый быстрый способ — использовать командную строку или PowerShell. Но есть и другие методы: сторонние утилиты, вроде Nmap или TCPView, а также проверка через брандмауэр. Далее разберём все способы подробно, с пошаговыми инструкциями и примерами.
Способ 1: командная строка и утилита netstat
Самый универсальный и доступный метод — использование утилиты netstat. Она есть в любой версии Windows, включая 10-ю, и не требует установки дополнительного ПО.
Чтобы увидеть все открытые порты, откройте командную строку от имени администратора и выполните команду:
netstat -ano
Вот что означают флаги:
-a— показывает все активные подключения и порты, которые прослушивает система;-n— отображает адреса и номера портов в числовом формате;-o— выводит идентификатор процесса (PID), который использует порт.
Результат вы увидите в виде таблицы с колонками: протокол (TCP/UDP), локальный и удалённый адрес, состояние порта и PID. Например, строка TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1234 означает, что порт 80 открыт для всех подключений и прослушивается процессом с PID 1234.
Если нужно отфильтровать только прослушиваемые порты, используйте команду netstat -ano | findstr LISTENING. Это покажет только те порты, которые ожидают входящие подключения.
| Команда | Описание | Пример вывода |
|---|---|---|
Get-NetTCPConnection -State Listen |
Показывает все открытые TCP-порты | LocalAddress: 0.0.0.0, LocalPort: 80, State: Listen |
Get-NetUDPEndpoint |
Показывает открытые UDP-порты | LocalAddress: 127.0.0.1, LocalPort: 53 |
Get-Process -Id 1234 |
Показывает процесс по его PID | ProcessName: httpd, Id: 1234 |
Способ 2: PowerShell для расширенного анализа
PowerShell предлагает более гибкие возможности для работы с портами. Например, можно получить список открытых портов вместе с именами процессов, которые их используют.
Запустите PowerShell от имени администратора и выполните:
Get-NetTCPConnection -State Listen
Эта команда выведет все открытые TCP-порты. Для UDP-портов используйте:
Get-NetUDPEndpoint
Чтобы увидеть, какой именно процесс использует порт, добавьте параметр | Select-Object LocalAddress, LocalPort, State, OwningProcess. А если нужно имя процесса, выполните:
Get-Process -Id (Get-NetTCPConnection -State Listen).OwningProcess
Способ 3: сторонние утилиты для проверки портов
Если встроенных инструментов Windows 10 вам недостаточно, можно воспользоваться специализированными программами. Они предлагают более удобный интерфейс и дополнительные функции, например сканирование удалённых хостов.
- TCPView — бесплатная утилита от Microsoft, которая показывает все открытые и порты в реальном времени. Можно отсортировать по имени процесса, номеру порта или состоянию.
- Nmap — мощный инструмент для сканирования портов. Подходит как для локальной проверки, так и для анализа удалённых устройств в сети. Работает через командную строку.
- Angry IP Scanner — удобная программа с графическим интерфейсом. Помимо портов, показывает IP-адреса устройств в сети и их статус.
- PortQry — утилита от Microsoft для проверки состояния портов на локальном и удалённом компьютере.
Например, в TCPView достаточно запустить программу, и вы сразу увидите таблицу с активными подключениями, где будут указаны: локальный и удалённый адрес, номер порта, состояние и имя процесса.
Способ 4: проверка через брандмауэр Windows
Брандмауэр Windows 10 также позволяет узнать, какие порты открыты для входящих подключений. Это полезно, если вы хотите проверить, какие правила уже настроены.
- Откройте
Панель управленияи перейдите в разделСистема и безопасность. - Выберите
Брандмауэр Windows Defender. - В левом меню кликните
Дополнительные параметры. Откроется окно Брандмауэр в режиме повышенной безопасности. - В левой части окна выберите
Правила для входящих подключений. - В правой части вы увидите список всех правил. Обратите внимание на правила с типом
Порт. Здесь будут указаны все порты, для которых разрешены входящие подключения.
Если вы хотите добавить или удалить правило для порта, это можно сделать в этом же окне. Например, чтобы открыть порт 8080 для TCP, создайте новое правило для входящих подключений и укажите нужный порт.
⚠️ Внимание: изменение правил брандмауэра может повлиять на безопасность системы. Не открывайте порты, если вы не уверены в их предназначении.
Сравнение методов проверки открытых портов
Каждый способ имеет свои плюсы и минусы. Например, командная строка и PowerShell подойдут для быстрой проверки, а сторонние утилиты — для более глубокого анализа.
| Метод | Плюсы | Минусы |
|---|---|---|
Командная строка (netstat) |
Быстро, не требует установки, работает на всех версиях Windows | Минимум информации о процессах, неудобно для анализа |
| PowerShell | Гибкость, возможность получить больше данных (например, имя процесса) | Требует знаний команд, menos intuitivo para principiantes |
| Сторонние утилиты (Nmap, TCPView) | Удобный интерфейс, расширенные функции (сканирование сети) | Требует установки, возможны ложные срабатывания при сканировании |
| Брандмауэр Windows | Показывает только разрешённые порты, можно настроить правила | Не отображает все открытые порты, только те, для которых есть правила |
Почему важно проверять открытые порты
Открытые порты — это потенциальные точки входа для злонамеренных атак. Если на вашем компьютере открыт порт, который не используется ни одной программой, его лучше закрыть. В то же время, некоторые приложения (например, веб-серверы, онлайн-игры или программы для удалённого доступа) требуют открытия определённых портов.
Регулярная проверка открытых портов помогает:
- обнаружить подозрительную активность (например, если незнакомый процесс открыл порт);
- оптимизировать работу сетевых приложений;
- улучшить безопасность системы.
Проверка открытых портов — это не только вопрос безопасности, но и способ убедиться, что нужные программы работают корректно.
Практика: пошаговая инструкция по проверке портов
Чтобы вам было проще, собрали пошаговую инструкцию, как проверить открытые порты на Windows 10 с помощью командной строки и PowerShell.
- Откройте командную строку от имени администратора: нажмите
Win + Xи выберитеКомандная строка (администратор)илиWindows PowerShell (администратор). - Выполните команду
netstat -ano | findstr LISTENING, чтобы увидеть все прослушиваемые порты. - Запомните процесса, который использует интересующий вас порт.
- Выполните команду
tasklist | findstr [PID](замените [PID] на реальный номер), чтобы узнать имя процесса. - Если нужно больше деталей, используйте PowerShell:
Get-Process -Id [PID] | Select-Object ProcessName, Id.
Если выподозрительный процесс, проверьте его в интернете или воспользуйтесь антивирусом.
Как проверить открытые порты на Windows 10
Часто задаваемые вопросы
Можно ли проверить открытые порты без прав администратора?
Да, можно. Команды netstat -an или Get-NetTCPConnection в PowerShell работают и без прав администратора. Однако вы не увидите информацию о процессов, которые используют порты (это требует повышенных прав).
Как закрыть открытый порт в Windows 10?
Чтобы закрыть порт, нужно либо завершить процесс, который его использует, либо изменить правила брандмауэра. Например, если порт открыт программой, закройте её через Диспетчер задач. Если порт открыт правилом брандмауэра, удалите или отключите это правило в Брандмауэр в режиме повышенной безопасности.
Какие порты обычно открыты по умолчанию в Windows 10?
По умолчанию в Windows 10 открыто несколько портов для системных служб. Например:
- Порт
135(TCP/UDP) — RPC (Remote Procedure Call); - Порт
445(TCP) — SMB (используется для сетевого доступа к файлам); - Порт
3389(TCP) — RDP (Удалённый рабочий стол).
Большинство из них используются системой и закрыты для внешнего доступа брандмауэром.
Чем отличаются и порты?
TCP (Transmission Control Protocol) — это протокол с установлением соединения. Он гарантирует доставку данных и их порядок, но работает медленнее. Используется для передачи данных, где важна надёжность (например, веб-сайты, электронная почта).
UDP (User Datagram Protocol) — протокол без установления соединения. Он быстрее, но не гарантирует доставку данных. Используется для передачи, где скорость важнее надёжности (например, видеотрансляции, онлайн-игры).