Как проверить наличие TCP соединений (открытые порты на компьютере под Windows). Как проверить, открыты ли порты в Windows-системах: простейшие методы

28.01.2019

Почему важно знать, какие порты открыты на компьютере? Зачем рядовому пользователю лезть в эти дебри? Дело в том, что абсолютно любая программа, использующая для работы сеть (тот же браузер), для выполнения своих функций резервирует в системе определенный порт, через который она обменивается данными. Если два приложения используют один и тот же номер, происходит конфликт. Приложение в таком случае просто не может корректно работать. Кроме того, проверка открытого порта может помочь выявить подозрительные соединения. Их обнаружение свидетельствует о наличии на компьютере потенциально опасных программ.

Проверка открытого порта штатными средствами Windows

Существует специализированное программное обеспечение, которое позволяет сканировать открытые порты на ПК. Однако операционная система Windows (как, впрочем, и другие) уже имеет встроенные средства для решения данной задачи. Элементарная проверка открытых портов на компьютере может быть выполнена посредством утилит командной строки. Последовательность операций следующая:

  1. Нужно нажать кнопку «Пуск» (Start).
  2. Далее следует остановить выбор на пункте меню «Выполнить».
  3. В появившейся строке следует ввести «CMD».
  4. Появится окно командной строки, где и нужно будет вводить специальные инструкции.

Запустив CMD, пользователь уже находится на полпути к успеху. Остается только запустить команду, которой выполняется проверка открытого порта компьютера. Можно также зайти в пункт меню «Все программы» >> «Стандартные». Здесь тоже есть ярлык запуска командной строки.

Любой системный процесс получает уникальный идентификатор - ID. Он нужен для образования многочисленных связей между приложениями. ID можно использовать для определения занятых портов отдельными программами и службами.

В командной строке следует набрать: «netstat -aon | more». С помощью инструкции будет активирована проверка открытого порта. Операция выполняется за несколько секунд. В удобном для восприятия постраничном виде будет выведен список открытых портов.


В каком состоянии находится порт?

Нужно обратить внимание на колонку «Состояние». Здесь возможны три варианта:

  • LISTENING (порт открыт, выполняется прослушивание соединения);
  • ESTABLISHED (соединение двух узлов активно прямо сейчас, идет обмен данными);
  • TIME_WAIT (режим ожидания).

Как понять, какое приложение использует порт?

Допустим, пользователю необходимо выяснить, какой именно программой прослушивается порт 3260. Для этого нужно посмотреть PID (Process ID) процесса. Там, к примеру, будет 4060. Далее нужно вызвать системный «Диспетчер задач». Процедура выполняется одновременным нажатием клавиш Del+Alt+Ctrl. По умолчанию в диспетчере задач колонка PID может не отображаться. Ее вывод настраивается через пункт меню «Вид» >> «Выбрать столбцы». При этом должна быть активной вкладка «Процессы». Процедура выполняется элементарно. Нужно поставить галку напротив пункта «Идентификатор процесса» (PID). В результате появится колонка с нужными номерами.

Пользователю необходимо провести поиск числа 4060 в столбце PID. Номеру соответствует имя процесса StarWindService.exe. И запущен он от пользователя SYSTEM. Это означает, что человек имеет дело с системным процессом, который не несет никакой угрозы безопасности. Принимать какие-либо меры для его блокировки не нужно.

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

Существуют десятки сторонних программ, с помощью которых может быть выполнена проверка открытого порта на компьютере. При этом можно анализировать не только собственную систему, но и другие узлы. Самым известным приложением такого плана является Nmap. Изначально программа была разработана для UNIX-систем. Однако сегодня можно бесплатно загрузить версию для Windows.

Nmap - мощное программное средство. Этим инструментом легко выполняется проверка открытых портов по IP большого количества объектов. Приложение отличается широким набором возможностей. Так, можно не только узнать состояние портов на удаленном компьютере, но и определить операционную систему хоста. Сегодня данная программа входит в обязательный пакет инструментов квалифицированного системного администратора. Активно ее эксплуатируют и специалисты по сетевой безопасности.

Источники: Википедия, Майкрософт, portscan.ru

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

  1. Для Windows: Пуск → «cmd» → Запустить от имени администратора → «netstat -bn»
  2. В антивируснике, таком как Avast, есть возможность посмотреть активные порты в Брандмауэре: инструменты -> Брандмауэр -> Сетевые соединения.

Также полезные команды netstat:

To display both the Ethernet statistics and the statistics for all protocols, type the following command:

netstat -e -s

To display the statistics for only the TCP and UDP protocols, type the following command:

netstat -s -p tcp udp

To display active TCP connections and the process IDs every 5 seconds, type the following command:

nbtstat -o 5

To display active TCP connections and the process IDs using numerical form, type the following command:

nbtstat -n -o

Для сокетов TCP допустимы следующие значения состояния:

CLOSED Закрыт. Сокет не используется.
LISTEN (LISTENING) Ожидает входящих соединений.
SYN_SENT Активно пытается установить соединение.
SYN_RECEIVED Идет начальная синхронизация соединения.
ESTABLISHED Соединение установлено.
CLOSE_WAIT Удаленная сторона отключилась; ожидание закрытия сокета.
FIN_WAIT_1 Сокет закрыт; отключение соединения.
CLOSING Сокет закрыт, затем удаленная сторона отключилась; ожидание подтверждения.
LAST_ACK Удаленная сторона отключилась, затем сокет закрыт; ожидание подтверждения.
FIN_WAIT_2 Сокет закрыт; ожидание отключения удаленной стороны.
TIME_WAIT Сокет закрыт, но ожидает пакеты, ещё находящиеся в сети для обработки

Список наиболее часто используемых портов

Порт Протокол Описание
1 20 FTP Data File Transfer Protocol - протокол передачи файлов. Порт для данных.
2 21 FTP Control File Transfer Protocol - протокол передачи файлов. Порт для команд.
3 22 SSH Secure SHell - «безопасная оболочка». Протокол удаленного управления операционной системой.
4 23 telnet TErminaL NETwork. Протокол реализации текстового интерфейса по сети.
5 25 SMTP Simple Mail Transfer Protocol - простой протокол передачи почты.
6 42 WINS Windows Internet Name Service. Служба сопоставления NetBIOS-имён компьютеров с IP-адресами узлов.
7 43 WHOIS «Who is». Протокол получения регистрационных данных о владельцах доменных имён и IP адресах.
8 53 DNS Domain Name System - система доменных имён.
9 67 DHCP Dynamic Host Configuration Protocol - протокол динамической настройки узла. Получение динамических IP.
10 69 TFTP Trivial File Transfer Protocol - простой протокол передачи файлов.
11 80 HTTP/Web HyperText Transfer Protocol - протокол передачи гипертекста.
12 110 POP3 Post Office Protocol Version 3 - протокол получения электронной почты, версия 3.
13 115 SFTP SSH File Transfer Protocol. Протокол защищенной передачи данных.
14 123 NTP Network Time Protocol. Протокол синхронизации внутренних часов компьютера.
15 137 NetBIOS Network Basic Input/Output System. Протокол обеспечения сетевых операций ввода/вывода. Служба имен.
16 138 NetBIOS Network Basic Input/Output System. Протокол обеспечения сетевых операций ввода/вывода. Служба соединения.
17 139 NetBIOS Network Basic Input/Output System. Протокол обеспечения сетевых операций ввода/вывода. Служба сессий.
18 143 IMAP Internet Message Access Protocol. Протокол прикладного уровня для доступа к электронной почте.
19 161 SNMP Simple Network Management Protocol - простой протокол сетевого управления. Управление устройствами.
20 179 BGP Border Gateway Protocol, протокол граничного шлюза. Протокол динамической маршрутизации.
21 443 HTTPS HyperText Transfer Protocol Secure) - протокол HTTP, поддерживающий шифрование.
22 445 SMB Server Message Block. Протокол удалённого доступа к файлам, принтерам и сетевым ресурсам.
23 514 Syslog System Log. Протокол отправки и регистрации сообщений о происходящих системных событиях.
24 515 LPD Line Printer Daemon. Протокол удаленной печати на принтере.
25 993 IMAP SSL Протокол IMAP, поддерживающий SSL шифрование.
26 995 POP3 SSL Протокол POP3 поддерживающий SSL шифрование.
27 1080 SOCKS SOCKet Secure. Протокол получения защищенного анонимного доступа.
28 1194 OpenVPN Открытая реализация технологии Виртуальной Частной Сети (VPN).
29 1433 MSSQL Microsoft SQL Server - система управления базами данных. Порт доступа к базе.
30 1702 L2TP (IPsec) Протокол поддержки виртуальных частных сетей. А также набор протоколов обеспечения защиты данных.
31 1723 PPTP Туннельный протокол защищённого соединения с сервером типа точка-точка.
32 3128 Proxy В данный момент порт часто используется прокси-серверами.
33 3268 LDAP Lightweight Directory Access Protocol - облегчённый протокол доступа к каталогам (службе каталогов).
34 3306 MySQL Доступ к MySQL базам данных.
35 3389 RDP Remote Desktop Protocol - протокол удалённого рабочего стола для Windows.
36 5432 PostgreSQL Доступ к PostgreSQL базам данных.
37 5060 SIP Протокол установления сеанса и передачи мультимедиа содержимого.
38 5900 VNC Virtual Network Computing - система удалённого доступа к рабочему столу компьютера.
39 5938 TeamViewer TeamViewer - система обеспечения удалённого контроля компьютера и обмена данными.
40 8080 HTTP/Web Альтернативный порт для HTTP протокола. Иногда используется прокси-серверами.
41 10000 NDMP Популярный порт: Webmin, SIP-голос, VPN IPSec over TCP.
42 20000 DNP Популярный порт: Usermin, SIP-голос.
Поделитесь статьей «Как проверить наличие TCP соединений (открытые порты на компьютере под Windows).» с друзьями:)

Но, прежде чем начать и приступить к выявлению открытых портов и программы, которые на них висят, я хотел-бы, для общего понимания пояснить простейшим языком, и рассказать вкратце о том, что такое порт и тип программ работающих по типу «Сервер – Клиент »

Что такое порт и тип программ Сервер – Клиент?

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

Если говорить о вредоносных программах то ситуация выглядит вот так. Имеются две программы «Программа — Сервер » и «Программа – Клиент » Принцип работы подобных вещей такой:

Программа – Сервер : Всегда запускается на компьютере, к которому нужно получить не правомерный доступ.

Программа – Клиент : Запускается самим создателям или просто пользователем с целью управления удаленным компьютером!

Человек используя «Клиент » отправляет нужные ему команды, которые понимает сервер. Сервер в свою очередь принимает команды и выполняет соответствующие действия на удалённом компьютере.

Подобные вредоносные вещи, о которых идёт речь в данный момент имеют названия «BackDoor» Один из типов вредоносного программного обеспечения.

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

Как происходит подключения?
Что бы «Клиент» имел возможность подключиться к «Серверу» и получить доступ к удалённому компьютеру «Сервер» открывает какой-то «ПОРТ» и ждёт подключения от клиента. Порт может быть открыт любой, но в диапазоне «От 0 до 65535» таковы ограничения протокола «TCP/IP»

В момент запуска «Сервера» происходит следующие: Программа – сервер открывает некий порт, например «3123» когда от клиента приходит запрос на порт «3123», сервер понимает, что это ему и обрабатывает полученные данные.

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

Так как существуют и легальные программы, которые используют определённые порты, например почтовые клиенты, всегда забирают себе 25 порт для отправки почты и 110 для приёма. Существует множество других популярных программ и по этой причины для всех популярных вещей зарезервирован диапазон «От 0 до 1023»

Поэтому вредоносные программы редко использую номера портов из диапазона «От 0 до 1023». Если Вы заметили, что, например порт 3123 открыт, и Вы не способствовали его открытию, стоит убедиться, что порт используется легальной программой, в противном же случае стоит найти и завершить программу, которая открыла данный порт…

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

Как я сказал выше, мы будем узнавать открытые порты средствами «Windows» не используя сторонние программы и тем более online сервисы. Для работы нам понадобится только командная строка.

Запускаем «cmd.exe» получаем список открытых портов, а так же «PID» процессов, которые используют порты. Для этого используем команду «netstat» с параметрами «-a -o» и для удобства сохраняем результат выполнения команды в файл «*.txt» на диск «С:\»

Конечный вариант команды такой:

Netstat -a -o > C:\Port.txt

После нажатия клавиши «Enter» нужно будет немного подождать, не долго.

После выполнения команды на диске «С» появится файл «Port.txt» В этом файле мы можем узнать открытые порты и «PID» процессов, которыми заняты порты.

Просматривая файл можно заметить не один открытый порт на компьютере, а некоторые из них весьма подозрительные. На скриншоте ниже я отметил уже знакомый нам порт «3123» предлагаю посмотреть, какой программой он был открыт.


Для получения имени процесса по его «PID» используем команду «tasklist» и смотрим, что за гадость открыла на нашем компьютере данный порт.

Для справки: Можно было изначально использовать команду «netstat» с параметрами «-a -b» в этом случаи мы сразу получили бы имена процессов.

Результат выполнения команды «tasklist» так же сохраняем в файл на диск, для удобного просмотра.

Tasklist > C:\ PID.txt

в итоге получаем файл «PID.txt» и зная что порт «3123» открыла программа с «PID — 3264» находим его и смотрим имя процесса.


Как видим имя программы «123.exe» не стал фантазировать, решил просто назвать «123» и все))

Сбор информации о файле и портах :

После получения списка открытых портов, можно узнать о них больше информации. Просто воспользуйтесь поиском «google.ru» и смотрите, что пишут о том или ином порте, а затем уже делайте выводы.

Так же ищите в сети названия процессов, которые Вам кажутся подозрительными.

Можно найти много информации и узнать несет за собой такой-то процесс угрозу или нет. Дело в том, что некоторые системные процессы тоже могут открыть какой-то порт для своих целей и убивать их не нужно, так как, это может привести к каким-то сбоям в работе всей системы.

В заключении.
Мы узнали — Как узнать открытые порты , на компьютере используя команду «netstat » Вы можете получить больше информации в самой справке по данной команде.

Как я уже говорил выше, можно было просто использовать параметры команды «-a -b» и не париться с получением имени процесса командой «tasklist» Сделал я так специально, что бы вкратце продемонстрировать для общего понимания работу команды «tasklist»

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