Проверить открыт ли порт по ip. Как проверить, открыты ли порты в 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 атака и многие фаэрволы в сети могут вас просто забанить, так что будьте осторожны.

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

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

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

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

В ней вводим простенькую команду следующего вида:

После этого запустится процесс сканирования. Естественно, здесь нужно немножко подождать, поэтому надо запастись терпением или чаем. 😉 И вот, на рисунке ниже в желтой рамке показаны открытые порты. Как видите, в графе «Состояние» они помечены как «LISTENING» (то есть слушающий).

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

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

Также могут присутствовать в общем списке значения типа «CLOSE_WAIT» (ожидания закрытия соединения) и «TIME_WAIT» (превышение времени ответа). Внимание на скриншот ниже.

Хорошо, вот мы узнали какие порты открыты, но что делать дальше с этим хозяйством? На самом деле все просто. Рассмотрим ситуацию на реальном примере. Допустим мы хотим узнать, какой программой открыт порт «1688» (он выделен на рисунке выше).

Для этого нужно скопировать значение из последнего столбца, который называется «PID». В нашем случае это цифра «9184». Теперь следует открыть диспетчер задач Windows одновременным нажатием клавиш «Ctrl+Alt+Del», а затем перейти на вкладку «Подробности».

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

На этом рассказ о том, как проверить открытые порты компьютера через командную строку Windows 10 и 7 версий подошел к завершению. Если остались какие-то вопросы, задавайте их в комментариях к публикации.

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

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

Проверка открытости портов

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

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

Применение онлайн-ресурсов

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

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

Проверка порта Telnet в Windows XP

Наконец, переходим к проверке наших портов на удаленных ПК. В Windows X. P. так же, как в любой иной системе, это производится элементарно.

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

Неполадки в Windows Vista и выше

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

  • В самом легком варианте стоит перейти в отдел программ и компонентов, потом выставить галку возле самого клиента Telnet. Если он почему-то не включается, вводим в командной строчке это: dism /online /Enable-Feature /FeatureName:TelnetClient.
  • Если же получилось, что клиента в списке нет совсем, переходим в редактор реестра (команда regedit в разделе «Выполнить»), потом опускаемся по списку HKLM/SYSTEM через папку CurrentControlSet до папки Windows. В окошке справа отыщем параметр CSDVersion и вместо значения двести ставим просто ноль. Потом работаем по тому же методу, что и для «экспишки».

Причины недоступности

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

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

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



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

Примечание: если вы запускаете сканер портов для DNS Вашего сайта, а он находится за такими прокси, как CloudFlare или SUCURI, то он может не выдать точную информацию. Используйте настоящий IP адрес сервера.

Сканер портов от MX ToolBox

MX Toolbox пытается проверить 15 наиболее часто используемых портов с таймаутом в 3 секунды и выдает результаты, какие из них открыты, а какие нет.

Онлайн сканер портов

Этот инструмент - персональный проект Javier Yanez, позволяющий бесплатно просканировать порты для IPv4 и IPv6 адресов.

Сканер портов от T1 Shopper

Сканирует один или диапазон портов , прослушиваемых сервером с указанным IP. Это удобно, если вы только хотите просканировать выбранные порты.

Сканер портов от Hacker Target

Выполняет быстрое сканирование шести наиболее распространенных портов (FTP, SSH, SMTP, HTTP, HTTPS, RDP) сканером портов NMAP.

Сканер портов от DNS Tools

Быстро сканирует некоторые распространенные порты, такие как FTP, SMTP, DNS, Finger, POP3, SFTP, RPC, IRC, IMAP, VNC и т. д.

Чтобы понять, как работает пара компьютеров, установивших связь друг с другом по протоколу TCP/IP, нужно знать, что для их взаимодействия устанавливается канал связи (Session), по которому они будут передавать друг другу информацию. Чтобы отправляющий данные компьютер был уверен, что они поступают к соответствующей программе на нужном компьютере, и принимающий компьютер понял, что полученные данные пришли именно с нужного компьютера и для нужной программы, связь устанавливается по схеме сервер-клиент на заранее оговоренном канале связи. Этот канал связи называется «Порт».

Программа на -сервере настроена таким образом, что в режиме запроса от клиентской программы. Другими словами она «слушает» заранее оговоренный порт (канал связи). Клиентская настроена на отправку запросов исключительно по заранее оговоренному порту. Для удобства они нумеруются от 0 до 65535.

Существуют общепринятые , которые закреплены за часто используемыми и популярными программами, например, почтовые программы The Bat и Outlook Express используют порт 110. Вообще, этот порт зарезервирован за всеми программами, соединяющимися с почтовыми серверами. Так, для браузеров зарезервирован свой порт – 80. Он предназначен для просмотра - со всех браузеров.

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

Для этого с помощью команды «Выполнить», которая доступна после активации кнопки «Пуск», ввести консольную команду netstat. Чтобы проверить открытый порт самостоятельно и заодно просмотреть