Добрый день уважаемые читатели и гости блога, вновь рад вас приветствовать в разделе про безопасность, в прошлый раз мы с вами научились удалять 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. Запустите командную строку из меню «Пуск» и введите cmd. В окне консоли наберите netstat –a –n –o
Команда выводит список всех активных подключений TCP и UPD, портов и процессов. В столбце «Локальный адрес» указан IP-адрес вашего компьютера и, через двоеточие, номер порта, процессом из столбца PID. «Внешний адрес» сообщает адрес удаленных узла и порта, которые прослушиваются соответствующим приложением.

Чтобы узнать имя процесса по его , cочетанием клавиш Сtrl+Alt+Delete вызывайте окно «Диспетчера процессов». Нажмите на кнопку «Диспетчер задач» и перейдите во вкладку «Процессы». Каждому номеру в столбце PID соответствует название процесса или приложения в столбце «Имя образа».
Если в окне «Диспетчера задач» не отображаются PID, в главном меню выбирайте команды «Вид» и «Выбрать столбцы». Отметьте флажком пункт «Идентиф. процесса (PID)».

Чтобы любого порта, введите в командную строку cmd. В окне консоли наберите telnet. В следующей строке появится приглашение к работе с этой командой. Наберите open , где domen_name – имя вашего домена, port_number – номер порта.
Если порт закрыт, появится cообщение о cбое: «Не удалось открыть подключение к этому узлу, сбой подключения». Если команда вступает в диалог и выдает значимую информацию – порт открыт.

Защищают от несанкционированных действий программы-файерволы, или брандмауэры. Иногда бывает необходимо открыть какой-то порт для связи с другим узлом. Если у вас активирован встроенный брандмауер Windows, через «Панель управления» зайдите в раздел «Сетевые подключения». Щелкните правой клавишей мыши по пиктограмме подключения к интернету для вызова контекстного меню. Выбирайте команду «Cвойства», перейдите во вкладку «Дoпoлнительно» и нажмите кнопку «Параметры».

В окне «Брандмауер Windows» нажмите кнопку «Дoбавить порт». В пoле «Имя» введите описание приложения, которое будет занимать порт, в поле «Нoмер пoрта» – произвольное число. Если ваша версия предлагает на выбор протоколы TCP и UPD, проведите процедуру дважды. Если вы добавляете порт для работы с определенным приложением, нажмите кнопку «Добавить программу» и укажите сетевой путь к ней, нажав «Обзор» или «Изменить область».

Источники:

  • Как проверить и определить, какое приложение открывает

Обменом данными между узлами в сети управляют сетевые протоколы (логические интерфейсы) разного уровня. Транспортный протокол TCP устанавливает соединение между узлом-клиентом и узлом-сервером и контролирует надежность пересылки пакетов данных. Обмен данными происходит между приложениями, которые установлены на компьютерах. Сетевой порт – это условное понятие, число, которое присваивается приложению, чтобы транспортный протокол знал, куда адресовать пакеты. Число это лежит в интервале от 1 до 65535.

Инструкция

Чтобы обмен данными происходил успешно, нужно чтобы соответствующие в узлах были открыты, т.е. могли принимать и передавать данные. Процесс поиска открытых портов называется сканированием. Занимаются им и хакеры, и системные администраторы: первые – чтобы внедрить вредоносное ПО на компьютер, вторые – чтобы помешать первым это сделать. Проверить порт ы вы можете, установив на компьютер специальную программу – скан портов или при помощи онлайновых сканеров. Зайдите на сайт WindowsFAQ.ru: http://www.windowsfaq.ru/content/view/451/82/ .

Если на вашем компьютере установлен файервол с детектором атак и автоматической блокировкой атакующего узла, отключите эту опцию или добавьте WindowsFAQ.ru в список исключений, иначе сканер будет . В разделе «Настройки сканирования» введите номера первого и конечного портов из того диапазона, который вы хотите проверить. Это могут быть т.н. зарезервированные номера – от 1 до 1023, или все порты на вашем компьютере.

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

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

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

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

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

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

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

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

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

Доступ к ней осуществляется посредством прописывания в строке меню «Выполнить», которое, в свою очередь, вызывается либо из главного меню «Пуск», либо сочетанием 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. В некоторых случаях придется удостоверить в правильности настроек маршрутизатора, особенно в случае на роутере. Также следует обратить внимание на настройки брэндмауэра - возможно, именно он блокирует порт. Наконец, не исключается и вариант того, что на самом деле порт находится в открытом состоянии, а время его пинга (отклика) завышено.

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

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

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

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

Способ 1: Portscan

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


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

Способ 2: Hide my name

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

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


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

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

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

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


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

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



Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png