Какие порты всегда открыты. Как проверить, открыты ли порты в Windows-системах: простейшие методы

Добрый день уважаемые читатели и гости блога, вновь рад вас приветствовать в разделе про безопасность, в прошлый раз мы с вами научились удалять screenup вирус, сегодня тема будет поинтереснее, а именно как проверить открытые порты на Windows или Linux. Опишу свою ситуацию, у меня есть проект, заказчик предоставил 20 виртуальных машин, в рамках которой моя организация должна развернуть там сервис, некоторые виртуалки находятся в разных сетях и пока на них программисты не успели все развернуть, мне необходимо с помощью специальной утилиты сделать прослушивание порта на одном сервере и проверить, что он отвечает на другом, так сказать сетевое взаимодействие. Давайте этим и займемся.

Вешаем службу отвечающую по нужному порту

Как я и писал выше, пока сервисы не развернуты, то и порты никто не слушает, но нам необходимо произвести проверку, чтобы потом к этому не обращаться. Нам необходимо с помощью специальной утилиты, эмулировать прослушивание нужного нам порта (сокета) , те кто из вас знает такую операционную систему , как Centos 7, то они помнят, в ней была отличная утилита под названием netcat. Она позволяла с помощью определенных команд слушать нужный администратору порт.

netcat - утилита Unix, позволяющая устанавливать соединения TCP и UDP, принимать оттуда данные и передавать их. На Windows платформах, она так же присутствует.

Распаковываем архив на сервере, где в будущем будет работать служба. В папке вам будут необходимы файлы nc.exe и nc64.exe. Далее зажимаете Shift и щелкаете правым кликом по папке, из контекстного меню выбираете пункт "Открыть окно команд"

Теперь представим, что я хочу чтобы на сервере работал 80 порт, ну типа IIS сервер . Открываем netcat, для начала посмотрите справку:

  • -d detach from console, background mode
  • -e prog inbound program to exec
  • -g gateway source-routing hop point[s], up to 8
  • -G num source-routing pointer: 4, 8, 12, ...
  • -h this cruft
  • -i secs delay interval for lines sent, ports scanned
  • -l - слушать входящие соединения
  • -L listen harder, re-listen on socket close
  • -n numeric-only IP addresses, no DNS
  • -o file hex dump of traffic
  • -p - какое соединение будет прослушивать
  • -r randomize local and remote ports
  • -s - задать локальный адрес назначения
  • -t answer TELNET negotiation
  • -c send CRLF instead of just LF
  • -u - UDP режим
  • -v verbose
  • -w secs timeout for connects and final net reads
  • -z zero-I/O mode

Нас интересует команда вот такого вида:

netcat-win32-1.12>nc.exe -l -p 80

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

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

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

telnet 10.242.17.134 80

Как видите я указал нужный мне ip адрес и нужный номер порта

Кстати проверить открытые порты на компьютере, где расположена служба, можно командой:

telnet localhost номер 80

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

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

Через внешние утилиты

Проверить открыть ли порт, можно и внешними утилитами, тут главное требование, чтобы у вас был белый ip имеющий доступ в интернет. Представим себе, все туже ситуацию, что вам необходимо протестировать 80 соединение, на котором будет сайт компании. Вы его развернули, но он почему-то не работает. Не так давно, я вам рассказывал про сервис ping.eu (). Одним из пунктов этого инструментария был port check (проверка открытых портов). В поле "ip address or host name" вы пишите ip адрес или dns имя сервиса, что требует проверки, а в соседнем поле, необходимый номер сокета, в моем случае 80, нажимаете "Go". Через секунду, вы получите результат, открыты порты 80 или 443 у сайта или нет. В моем случае статус "open".

Массовая проверка открытых портов в сети и локально

Существуют специальные утилиты, в задачи которых входит сканирование компьютера или сервера, на предмет доступных портов, по которым есть соединение, они называются сканеры портов. Таких программ очень много, я приведу пример в виде XSpider 7.7. Как проверить открыт ли порт в утилите XSpider 7.7. Щелкаем правым кликом по "сканированные хосты" и добавляем хост или диапазон ip адресов.

Прописываете, что именно будет подвергаться проверке.

Нажимаем значок запуска и запускаем процедуру.

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

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

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

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

Способ 1: Portscan

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


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

Способ 2: Hide my name

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

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


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

Способ 3: Тест IP

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

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


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

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

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

Как проверить, открыты ли порты? Командная строка

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

Доступ к ней осуществляется посредством прописывания в строке меню «Выполнить», которое, в свою очередь, вызывается либо из главного меню «Пуск», либо сочетанием Win + R. Для того чтобы проверить, открыт ли порт Windows, интересующий пользователя, для начала можно отобразить полный список портов, где и будет присутствовать искомый. Для этого используется команда netstat -a. После ее выполнения на экране отобразится полный перечень портов с указанием их статуса.

Использование онлайн-ресурсов

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

Для таких целей можно использовать достаточно много сайтов, которые проверяют подключение и статус предполагаемого открытого порта. Например, в качестве средства быстрой проверки можно задействовать раздел Port-scanner, расположенный на ресурсе WhatsMyIP.org. Тут в разделе Custom Port Test имеется специальное поле, в которое пользователю нужно ввести интересующий его порт, поле чего нажать кнопку начала проверки (Start Test). Само собой разумеется, этот процесс займет немного времени. По его завершении будет выдан результат.

Как Telnet в Windows XP

Наконец, перейдем к проверке на В Windows XP, равно как в любой другой системе, это делается элементарно.

Как проверить, открыты ли порты, необходимые для доступа к определенным функциям или ресурсам Интернета? Да проще простого. Опять же, в качестве основного инструмента будет использоваться Но на сей раз в ней нужно будет ввести вариант команды Telnet «имя сервера» «номер порта» (например, для проверки соединения через SMTP с портом номер 25 это выглядит как telnet smtp.имя.ru 25, где в качестве имени вводится название домена). Как видим, все просто.

Проблемы в Windows Vista и выше

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

В самом простом варианте следует зайти в раздел программ и компонентов, после чего поставить галочку напротив самого клиента Telnet. Если он по каким-то причинам не включается, используем в командной строке следующее: dism /online /Enable-Feature /FeatureName:TelnetClient.

В случае же, если клиент в списке отсутствует вообще, заходим в (команда regedit в меню «Выполнить»), после чего спускаемся по ветке HKLM/SYSTEM через подпапку CurrentControlSet до директории Windows. В окне справа находим параметр CSDVersion и вместо значения 200 присваиваем ему 0. Далее используется тот же способ, что и для «экспишки».

Почему некоторые порты недоступны?

По результатам можно судить о состоянии того или иного порта. Если в данный момент какой-то из них недоступен, но его требуется задействовать, причин на это может быть достаточно много. Чаще всего это связано с последствиями воздействия вирусов. Иногда следует проверить настройки TCP/IP. В некоторых случаях придется удостоверить в правильности настроек маршрутизатора, особенно в случае на роутере. Также следует обратить внимание на настройки брэндмауэра - возможно, именно он блокирует порт. Наконец, не исключается и вариант того, что на самом деле порт находится в открытом состоянии, а время его пинга (отклика) завышено.

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

Популярный вопрос «как проверить, открыт ли порт» актуален как для опытных геймеров, так и начинающих сисадминов. Соответственно, прежде чем открывать порты на компьютере с ОС Windows XP, 7 или 8, необходимо определиться с конечной целью данного «предприятия» и тем, какие именно порты нужно открыть. Например, для «Skype» это 433 и 80 порт, а для мегопопулярной игры «Minecraft» потребуется открыть порт 25565.

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

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

Например, большинство компаний, предоставляющих услуги информационной безопасности, рекомендуют обратить внимание на порты за номерами: 21, 23, 25, 80, 1026, 1028, 1243, 137, 139, 555, 666, 1001, 1025, 7000, 8080, 12345, 31337, 31338.

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

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

Когда цель черко определена и список портов «согласован», нужно проверить открыт ли порт в настоящее время. Для этого можно воспользоваться «Командной строкой»:

Откройте «Командную строку» и введите команду «netstat -a»;

В ответ на команду ОС Windows представит список всех открытых портов «TCР» и «UPD»;

В столбце «Состояние» будет указано, что происходит с данным портом:

  • - «Listening» - т.е порт «прослушивается». Иными словами, некая программа следит за действиями данного порта;
  • - «Established» - порт открыт и используется;
  • - «Time wait» - порт находится в режиме ожидания: т.е. использующая его программа готовится перевести порт в одно из указанных состояний.

В настоящее время существует достаточно много сервисов, позволяющих проверить, открыты порты или нет: так, доверия пользователей заслужила онлайн проверка «2ip». Для проверки требуется только ввести номер порта и кликнуть «проверить».

Итак, с тем как посмотреть открытые порты определились, теперь спокойно открывать нужный порт.

Как открыть порт в брандмауэре windows 7?

Наиболее простой способ открыть нужный порт на компьютере - это воспользоваться встроенным «Брандмауэром Windows»:

- («Пуск» - «Панель управления»);

В столбце слева «Дополнительные настройки» откроется окно «Брандмауэр Windows в режиме повышенной безопасности»;

  • - нажмите «Правило для входящего подключения» и в разделе «Действия» (правая сторона окна) выберите «Создать правило»;

  • - откроется «Мастер создания правил»: из представленного списка выберите «Для порта» и нажмите «Далее»;

Ниже строка «Определённые локальные порты»: именно здесь и требуется прописать открываемый порт (или диапазон портов) и нажать «Далее»;

  • - откроется раздел «Действия», в котором выберите «Разрешить подключение» - так как вам нужно открыть порт на компьютере;

  • после чего вам останется ввести имя созданного правила и - по желанию - заполнить описание.

При некорректной настройке брандмауэра может возникнуть , о которой мы рассказывали в одной из предыдущих статей

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

Как открыть порт через командную строку Windows?

Однако возможность открыть порт через firewall - далеко не единственный способ, которым можно воспользоваться. Открыть порты на компьютере можно и с помощью «Командной строки»: это несложно, но данный подход требует элементарных познаний в структуре и функциональной части команды «netsh».

Итак, откройте командную строку с «Правами администратора» и введите команду «netsh advfirewall firewall add rule name=L2TP_TCP protocol=TCP localport=хххх action=allow dir=IN»

в структуру команды входят следующие параметры:

  • - имя «L2TP_TCP» - это туннельный протокол второго уровня (аббревиатура «L2TP» дословно «Layer 2 Tunneling Protocol»);
  • - «protocol=TCP» означает, к какому протоколу относится открываемый порт: если он для UPD, то после символа «равно» и необходимо прописать данную аббревиатуру;
  • - «localport=хххх» вместо «х» укажите номер открываемого порта.

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

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

I. ПРОВЕРКА ОТКРЫТЫХ ПОРТОВ НА ЛОКАЛЬНОМ КОМПЬЮТЕРЕ

Способ 1. Для того, чтобы проверить открытые порты на локальном (своем) компьютере, можно воспользоваться «Командной строкой» операционной системы Windows (

Для вызова этой строки необходимо нажать сочетание клавиш Win+R и прописать команду «cmd», после чего нажать «ОК».

В открывшемся окне пропишите специальную команду «netstat -a» и ознакомьтесь со списком открытых портов на Вашем компьютере.

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

whatsmyip.org/port-scanner/

Данный ресурс сам определит Ваш IP-адрес, а сканировать порты можно через специальное поле «Custom Port Test ».

Введите интересующий Вас порт и нажмите кнопку «Check Port », после чего Вы получите ответ, открыт или закрыт данный порт.

II. ПРОВЕРКА ОТКРЫТЫХ ПОРТОВ НА УДАЛЕННОМ КОМПЬЮТЕРЕ

Теперь рассмотрим, как проверить, открыт ли порт на удаленном компьютере или сервере. Воспользуйтесь все той же «Командной строкой» в системе Windows, но теперь пропишите команду telnet в формате:

telnet IP-адрес порт

Нажмите клавишу «Enter». Если нет записи «Could not open …», то запрашиваемый порт открыт, иначе - закрыт.

Мы вкратце рассмотрели, как проверить, открыт ли порт на компьютере. Если остались, какие либо вопросы, то задайте их в поле для комментариев.

Что означает результат проверки порта?

Статус Порт закрыт

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

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

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

Статус Порт открыт

К данному порту можно произвести подключение, он доступен из интернета. Если это то, что требуется — прекрасно.

Если неизвестна причина, по которой порт может быть открытым, то стоит проверить запущенные программы и сервисы. Возможно, некоторые из них вполне легально используют этот порт для работы с сетью. Существует вероятность, что порт открыт в следствии работы несанкционированного/вредоносного программного обеспечения (Вам поможет материал Как включить защиту от потенциально нежелательных программ в Windows Defender). В таком случае рекомендуется проверить компьютер антивирусом.

F.A.Q.

Что за порты? Для чего они нужны?

Порты, которые проверяет PortScan.ru, — это не физические, а логические порты на компьютере или сетевом устройстве.
В случае, если программа или служба планирует работать с сетью, она открывает порт с уникальным номером, через который она может работать с удаленными клиентами/серверами. Фактически, сетевая программа резервирует для себя определенное число, которое позволяет понять, что пришедшие данные предназначаются именно этой программе.

На человеческом языке это звучало бы примерно так: "Я, программа-сервер, открываю порт номер 1234. Если по сетевому кабелю придут данные с номером порта 1234 — это мне. "

Какие номера портов может открывать программа?

Порты идентифицируются номерами от 0 до 65535 включительно. Любой другой порт открыть нельзя, соответственно и проверить тоже. Это ограничения TCP/IP протокола.

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

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

Для каких ситуаций возможна проверка открытых портов?

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

Стоит учесть, что если ваш компьютер подключен к интернету не напрямую, а через роутер (маршрутизатор), то результаты проверки относятся именно к роутеру. Проверить состояние порта для компьютера внутри такой подсети возможно только при наличии проброса портов.

Что такое проброс портов?

Проброс портов (Port Forwarding, иногда Virtual Servers) — специальная настройка на роутере, позволяющая перенаправить внешние запросы (из интернета) на компьютеры локальной сети. По сути это способ указать, на какой локальный компьютер пересылать данные и запросы подключения, пришедшие на определенный порт.

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

Если ваш компьютер подключен к интернету напрямую (без роутера/маршрутизатора), то выполнять проброс портов не требуется. Все ваши открытые порты должны быть доступны из интернета (естественно, при наличии выделенного IP).

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

Для Windows: Пуск → "cmd" → Запустить от имени администратора → "netstat -bn"
Для Linux: В терминале выполнить команду: "ss -tln"

Как закрыть порт?

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