Как посмотреть открытые порты на windows server

1 min read

How to check open/listening ports in Windows Server-based operating systems.

Right-click on the start menu and click ‘Windows PowerShell (admin), in the new PowerShell window that has just opened up type: netstat -an this will show you all open ports and which IP they are listening on:

PS C:\Users\Administrator> netstat -an

Active Connections

  Proto  Local Address          Foreign Address        State
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:2179           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:3389           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:5985           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:47001          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49664          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49665          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49666          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49667          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49668          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49669          0.0.0.0:0              LISTENING
  TCP    0.0.0.0:49670          0.0.0.0:0              LISTENING
  TCP    22.156.188.131:139     0.0.0.0:0              LISTENING
  TCP    22.156.188.131:3389    174.143.175.2:42252    ESTABLISHED
  TCP    22.156.188.131:3389    182.169.114.207:64454  ESTABLISHED
  TCP    22.156.188.131:3389    191.220.163.122:57588  ESTABLISHED
  TCP    22.156.188.131:3389    191.220.163.131:31525  ESTABLISHED
  TCP    22.156.188.131:3389    191.220.163.151:23613  ESTABLISHED

As we can see above for example port 123 is listening on IP 22.156.188.131 we can also see that a connection to port 3389 (WIndowd RDP) is currently established from IPS 174.143.175.2, 182.169.114.204, and, 191.220.163.131.

If you are expecting to be able to connect to a specific service that you know runs on a specific port and you can see it when listing the open/established ports as above yet it fails to connect there is a very good chance that you have not opened that port up in the Windows Firewall if however, you do not see that the port is listening for connections then there is a good chance that the service itself is not correctly configured so you need to look at that before the firewall.

If the output is just to much on a busy server for example you can narrow this down to specific ports, Linux users will have probably noticed by now that grep is not available in Windows PowerShell, never fear though as ‘Select-String’ does the same job, for the most part, the example below will show you how to check specific ports in the following example port 3389.

PS C:\Users\Administrator> netstat -an | Select-String 3389

  TCP    0.0.0.0:3389           0.0.0.0:0              LISTENING
  TCP    22.156.188.131:3389    182.169.114.207:64454  ESTABLISHED

As an extra tip, if you are concerned that the client software you are using might be the thing preventing connection and the server side listening connection is on TCP you can also use telnet to test the connection

telnet 20.30.40.50 3389

If the connection to the port is ok you will see:

Trying 20.30.40.50...
Connected to 20.30.40.50.
Escape character is '^]'.

That means the connection has been established to the remote server so you can start troubleshooting the client software if it is not connecting, if however, nothing happens and eventually it just times out then a connection to the port on the server cannot be established at all so you need to investigate the server-side software and network

Все способы:

  • Используем команду netstat для просмотра открытых портов
    • Отображение всех подключений и ожидающих портов
    • Постраничное отображение открытых портов
    • Запись результатов в текстовый файл
    • Поиск по содержимому
  • Вопросы и ответы: 2

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

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

Портами называют натуральные числа, которые записываются в заголовках протоколов передачи данных (TCP, UDP и так далее). Они определяют процесс получения и передачи информации в рамках одного хоста и в большинстве случаев используются онлайн-программами для установки соединения. Просмотр открытых портов может понадобиться в случае определения работоспособности приложений или при стандартном мониторинге сети. Лучше всего с этим справится команда netstat, а ее активация доступна с применением разных аргументов.

Отображение всех подключений и ожидающих портов

Самый простой аргумент, применяемый к утилите netstat, имеет обозначение -a, и отвечает за вывод сведений обо всех активных подключениях их портов, которые ожидают соединения. Такая информация доступна к просмотру без применения прав администратора и выводится на экран следующим образом:

  1. Поскольку рассматриваемая команда является консольной, потребуется запустить приложение, чтобы ее выполнить. Откройте меню «Пуск», найдите там «Командную строку» и запустите ее. О других методах перехода в консоль читайте в другом нашем материале по следующей ссылке.
  2. Переход в командую строку Windows для использования стандартной команды netstat

    Подробнее: Открытие командной строки в Windows 10

  3. В поле ввода напечатайте netstat -a, а затем нажмите на клавишу Enter.
  4. Ввод команды netstat с аргументом для отображения иноформации об активных подключениях

  5. На экране тут же начнет появляться список с доступными адресами.
  6. Отображение информации об активных подключениях через команду netstat

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

Постраничное отображение открытых портов

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

  1. В консоли пропишите netstat -aon | more и нажмите на Enter.
  2. Ввод команды netstat для подробного отображения параметров постранично

  3. Здесь сразу же появится вся важная информация о портах, которые находятся в разных состояниях. В пятой колонке обозначаются идентификаторы.
  4. Постраничное отображение соединений с идентификаторами через команду netstat

  5. Не все порты выводятся сразу, поэтому нужно жать на Enter, чтобы каждый раз отображать еще по одной строке.
  6. Продолжение отображение строк с идентификаторами через команду netstat

  7. Если вы увидите поле ввода, значит все страницы были успешно выведены на экран.
  8. Завершение отображения строк с идентификаторами в netstat

Теперь хотелось бы поговорить про используемые аргументы и значение увиденных параметров. Давайте сначала затронем знакомые буквы синтаксиса:

Аргумент Описание
-a Отображает сведения обо всех подключениях
-o Отвечает за включение колонки с идентификатором каждого адреса
-n Переводит адреса портов и их номера в числовой формат
more Постраничный вывод элементов

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

Показатель Описание
CLOSE_WAIT Подключение ожидает своего закрытия
CLOSED Подключение было успешно закрыто
ESTABLISHED Активная работа соединения
LISTENING Ожидается соединение или еще говорят: «Слушается порт»
TIME_WAIT Время ответа было превышено

Эти объяснения должны разобраться помочь не только с составлением запросов для netstat, но и без проблем разобраться с полученной информацией.

Запись результатов в текстовый файл

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

  1. Напишите, например, netstat -aon | more или netstat - a, а затем добавьте > netstat.txt, что означает запись результатов в указанный файл (он будет создан в пользовательской папке). После ввода нажмите на Enter.
  2. Ввод команды для сохранения результатов netstat в текстовом варианте

  3. Запустите файл, введя его название и формат в консоли.
  4. Запуск текстового файла с сохраненными результатами команды netstat

  5. Теперь вы можете управлять содержимым и сохранить его в любом другом удобном месте.
  6. Просмотр текстового файла с результатами netstat

Поиск по содержимому

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

  1. Введите netstat -a | find /I "LISTENING", что задаст параметр отображения только портов с состоянием LISTENING, аргумент /I при этом используется для отмены учета регистра символов.
  2. Команда netstat с фильтром по содержимому

  3. В результатах отобразится только подходящая информация.
  4. Отображение результатов netstat с фильтром по содержимому

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

Читайте также:
Открываем порты на роутере
Открываем порты в брандмауэре Windows 10

Команда netstat всегда показывает правильные результаты, однако если хотите убедиться в открытости порта другим путем, рекомендуем задействовать специальные онлайн-сервисы, позволяющие справиться с поставленной задачей.

Читайте также: Сканирование портов онлайн

Наша группа в TelegramПолезные советы и помощь

Как проверить, открыт ли порт

  • Что такое порт
  • Как проверить, открыт ли порт

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

Вы можете узнать, открыт ли порт, с помощью нашего сервиса проверки доступности портов.

Что такое порт

Порт — это числовой идентификатор программы или процесса, который обслуживает сетевые соединения на заданном IP-адресе. Номера портов могут быть от 0 до 65 535.

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

Есть стандартные порты, такие как:

  • порт 80 — для  веб-сервера, который работает по протоколу HTTP,
  • порт 443 — для защищенного SSL-сертификатом веб-сервера, который работает по протоколу HTTPS,
  • порт 21 — для FTP-протокола (протокола передачи файлов).

Как проверить, открыт ли порт

Проверка порта на доступность возможна как для своего (локального) компьютера , так и для удаленного.

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

  1. Вызовите командную строку сочетанием клавиш Win+R

  2. Введите команду «cmd» и нажмите ОК:

  1. Пропишите команду netstat -a и кликните Enter:

Готово, перед вами список открытых портов на вашем компьютере.

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

Провести проверку портов на открытость удаленного компьютера можно при помощи команды telnet.

Telnet — это утилита, с помощью которой можно соединиться с удаленным портом любого компьютера. Telnet позволяет установить связь, чтобы передавать команды и получать ответы (например, сделать проброс портов).

В Windows 7/8/10 и Vista утилита telnet отключена по умолчанию. Утилиту можно установить по инструкции.

Как проверить доступность порта с помощью команды telnet в Windows:

  1. Вызовите командную строку сочетанием клавиш Win+R.

  2. Введите команду «cmd» и нажмите ОК.

  3. В окне терминала введите команду:  telnet имя_сервера номер_порта (например, telnet mysite.ru 31). 

    Можно проверить порт на доступность по IP, если ввести команду telnet IP_сервера номер_порта (например, telnet 10.0.119.127 31).

  • Если на экране появится текст «“telnet” не является внутренней или внешней командой, исполняемой программой или пакетным файлом», то на вашем компьютере отключена утилита и ее надо установить по инструкции:

  • Если на экране командной строки появится ошибка, значит порт закрыт:

  • Если экран станет полностью пустым или появится приглашение сервера, значит порт открыт:

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

Порт идентифицируется номером с помощью числа от 0 до 65535. Порты от 0 до 1023 известны как «привилегированные» или «системные порты». Они обычно используются системными службами и известными протоколами, например, протокол HTTP использует порт 80, а в свою очередь HTTPS — 443.

Порты делятся на два типа:

  • TCP-порты (Transmission Control Protocol) — обеспечивают надёжную доставку данных;
  • UDP-порты (User Datagram Protocol) — обеспечивают более быструю, но менее надёжную передачу данных.

Состояние, когда какое-либо активное приложение или служба выполняет роль сервера, ожидая входящих соединений от клиентов, означает, что приложение готово принимать запросы и реагировать на них. В таких случаях говорят, что служба или приложение прослушивает порт. Это подразумевает, что для обеспечения возможности устанавливать соединения и обмениваться данными такой порт должен быть в открытом состоянии. Но при этом открытые порты могут представлять угрозу безопасности узла.

Открытые порты увеличивают поверхность атаки, предоставляя злоумышленникам больше возможностей для эксплуатации уязвимостей в системе. Также, если на открытом порту работает служба с уязвимостями или неправильно настроенными правами доступа, злоумышленники могут получить несанкционированный доступ к системе. Вредоносное ПО часто ищет открытые порты для проникновения в систему и дальнейшего распространения. Кроме того, открытые порты могут быть использованы для проведения DDoS-атак, что может привести к перегрузке системы и отказу в обслуживании легитимных пользователей.

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

Как проверить порт на локальном хосте

Просмотр открытых портов на сервере, к которому вы подключены, позволяет произвести команда netstat. netstat (сокращение от «network statistics») — это командная утилита, используемая для отображения сетевых соединений, как входящих, так и исходящих, а также таблиц маршрутизации, статистики интерфейсов и многого другого, связанного с сетевой активностью на компьютере.

Для просмотра всех активных соединений и портов откройте командную строку при помощи комбинации клавиш Win R, где наберите cmd. В открывшейся оболочке запустите команду netstat -a.

Вывод команды netsat -a  - Как проверить порты на доступность

Как проверить порт на удалённом сервере

Проверить, является ли порт открытым на удалённой машине, можно с помощью различных инструментов и методов. Здесь же мы рассмотрим, как это сделать при помощи Telnet — сетевого протокола, который используется для удалённого доступа к устройствам и управления ими через текстовый интерфейс. Он работает по модели клиент-сервер. Telnet позволяет пользователям подключаться к удалённым компьютерам или сетевым устройствам, вводить команды и получать текстовые ответы.

Telnet работает по протоколу TCP и по умолчанию использует порт 23. Как правило в системах Windows данная утилита отключена.

В Windows по умолчанию команда Telnet отключена - Как проверить порты на доступность

Поэтому перед тем, как её использовать, необходимо произвести активацию. Для этого наиболее удобно применение командной строки. Командная строка для проведения такого рода процедуры должна быть запущена от имени администратора. Чтобы это сделать, нажмите Win X и в открывшемся меню выберите Command Prompt (Admin).

В оболочке командной строки запустите команду, которая активирует в данной системе возможность использования Telnet.

dism /online /Enable-Feature /FeatureName:TelnetClient

Активация Telnet через PowerShell

Команда Telnet имеет следующий формат:

telnet [host [port]]

Также в команде допустимо использование следующих опций:

  • -l <имя_пользователя>: опция указывает имя пользователя, которое будет использовано для входа в удалённую систему, при этом данная опция работает только если удалённая система поддерживает параметр TELNET ENVIRON. Другими словами, вместо ввода имени пользователя вручную команда telnet автоматически использует указанное имя.
  • -a: опция пытается автоматически выполнить вход в удалённую систему, используя текущее имя пользователя, под которым вы вошли в свою локальную систему. Это похоже на использование опции -l, но имя пользователя не нужно указывать вручную, так как будет использоваться текущее.
  • -e <символ>: опция задаёт специальный символ, который используется для выхода из режима ввода и перехода в командный режим клиента Telnet. Например, по умолчанию это может быть ^] (Ctrl ]). С помощью этой опции вы можете изменить его на другой символ, который вам удобнее использовать.
  • -f <имя_файла>: опция указывает имя файла на клиентской стороне, который будет использован для входа в систему. Это может быть файл с параметрами для аутентификации или другими данными, необходимыми для подключения.
  • -t <тип_терминала>: опция указывает тип терминала, который будет использован в сессии Telnet. Например, можно задать тип терминала как vt100, чтобы удалённая система знала, какие возможности и ограничения имеет ваш терминал.

В самом простом варианте проверка доступности порта при помощи Telnet может выглядеть следующим образом:

telnet 10.10.10.10 443

В данном случае 10.10.10.10 — IP-адрес удалённого хоста, а 443 — номер исследуемого порта. Если данный порт закрыт, то в ответ вы получите сообщение об ошибке.

Вывод команды telnet при недоступности удалённого порта

Обмен данными по локальной сети или через интернет осуществляется путем подключения друг к другу двух компьютеров. Чтобы получить данные с удаленного сервера, требуется соблюсти несколько условий – наличие IP-адреса у источника и получателя, выбор конкретного протокола приема-передачи и открытые порты на обоих компьютерах.

Что такое порт компьютера

Порт – это виртуальное дополнение к сетевому адресу, которое позволяет разделить запросы разных приложений и обрабатывать их автономно. Часть постоянно занята системными службами Windows или другой операционки, остальные свободны для использования прикладными программами, в том числе запускаемыми на удаленных серверах.

Проверка порта на доступность

Особенности портов:

  1. Иногда порты путают с разъемами на материнской плате (формально они и являются ими, но там речь идет о подключении физических устройств).
  2. Общее количество портов составляет 65535. Они имеют определенное назначение, например, 20-21 «по умолчанию» используется для соединения по FTP, а 110 выделен под почтовый протокол POP3.
  3. Сочетание IP-адреса и порта принято называть сокетом или файловым дескриптором, при помощи которого программа передает данные.

Перед подключением к какому-либо порту рекомендуется проверить, свободен ли он. Если нет, то операционная система выдаст ошибку, и соединение прервется. Многие программы делают проверку в автоматическом режиме и сами пытаются менять номера в поиске незанятого подключения. Но в ряде случаев это требуется сделать вручную, например, при отладке собственного кода.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться


Как проверить, открыт ли порт для подключения

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

Открыт ли порт

Существует три основных способа проверки открытых портов:

  1. Специализированные онлайн-сервисы.
  2. Прикладные приложения, запускаемые на компьютере.
  3. Встроенные в операционную систему утилиты.

Выбор решения зависит от задач. Так, если требуется открыть доступ к своему компьютеру извне, можно воспользоваться сервисами 2ip.ru или portscan.ru. При локальных работах удобнее приложения типа Portforward Network Utilities или штатная утилита TELNET. Она поставляется в «стандартной» сборке Windows и доступна для запуска в консоли CMD.

Перечень открытых портов на локальном компьютере

Открытый порт на домашнем или рабочем компьютере – это фактически «дыра» в безопасности и риски утраты контроля над ситуацией. Именно через них проникают трояны и иные вирусы, которые имеют цель предоставить злоумышленнику возможность удаленного подключения к ПК без разрешения владельца. 

Командная строка

Проверить занятые порты легко:

  1. Нужно нажать комбинацию клавиш <Win+R>.
  2. Ввести команду CMD и нажать кнопку Enter.
  3. Ввести команду netstat –a и повторно нажать Enter.

В консоли отобразится перечень занятых портов с указанием, какое приложение или служба ими «распоряжается». Такой вариант проверки интересен тем, что он дает объективную картину. Если рассчитывать только на онлайн-сервисы, иногда создается впечатление, что открытых портов нет. Эффект создается из-за блокировки внешних запросов брандмауэром Windows или другим ПО.

Порт телнет

Если хочется изучить список на предмет «посторонних» программ, его лучше выгрузить в файл при помощи команды netstat –a >имя.txt. По умолчанию список сохраняется в каталоге пользователя, в аккаунте которого происходил запуск утилиты (типа C:\\Пользователи\User\). При желании перед запуском утилиты можно перейти в корень диска командой cd c:\.

VDS Timeweb арендовать

Просмотр открытых портов на удаленном компьютере

При взаимодействии с удаленным сервером используется другая утилита – TELNET. В Windows она по умолчанию отключена, потому что не относится к пользовательским приложениям. Перед первым запуском придется провести «активацию». Существует два способа включения – в консоли или через графический интерфейс.

Запуск утилиты telnet

Активация заключается во вводе специальной команды:

dism /online /Enable-Feature /FeatureName:TelnetClient

Она сработает только при запуске консоли с правами администратора. Схема открытия приложения несколько иная:

  1. Нажать комбинацию клавиш <Win+X>.
  2. Выбрать пункт «Командная строка (администратор)».
  3. В открывшемся окне ввести команду активации telnet.

Команда telnet

Если пользователь предпочитает управлять компьютером через графический интерфейс, нужно запустить панель управления, а в ней утилиту «Удаление программы». В открывшемся окне нужно перейти в раздел «Включение или отключение компонентов Windows», далее в общем списке найти строку «Telnet», поставить в ней галочку и нажать кнопку ОК. Все, служба активирована и готова к использованию (даже в консоли).

клиент Телнет

Синтаксис:

telnet опции хост порт

Хост – это домен или его IP-адрес, порт – виртуальное дополнение для образования сокета, опции же позволяют менять режим подключения. Их основные варианты:

  1. -4 – использовать адреса стандарта IPV4;
  2. -6 – использовать адреса стандарта IPV6;
  3. -8 – применять 8-битную кодировку типа Unicode;
  4. -E – отключение поддержки Escape-последовательностей;
  5. -a – вход с именем пользователя из переменного окружения User;
  6. -b – использовать локальный сокет;
  7. -d – включить режим отладки;
  8. -p – режим эмуляции rlogin;
  9. -e – задать символ начала Escape-последовательности;
  10. -l – пользователь для авторизации на удаленном сервере.

Простейший вариант проверки открытых портов – это ввод команды без опций:

telnet 10.0.119.127 80

Если на экран будет выведено сообщение «Сбой подключения», порт закрыт, нужно подбирать другой номер. Если порт открыт, пользователь увидит пустой экран или приглашение со стороны сервера ввести логин и пароль.

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Срок поддержки вашего компьютера с windows 7 закончился как убрать
  • Как убрать пароль при входе в windows 10 через cmd
  • Сканер hp scanjet 4370 драйвер для windows 10
  • Диспетчер устройств заблокирован администратором на windows 10 что делать
  • Почему постоянно появляется синий экран на windows 10