Как проверить порты на открытость? Как проверить открыт ли порт
От переводчика. Привет, сегодня я хочу опубликовать перевод статьи со списком сервисов, которые помогут найти открытые порты на серверах. Надеюсь, что статья окажется полезной.
Если вы размещаете свои веб-приложения на администрируемом сервере или шаред хостинге, тогда Вам не о чем беспокоиться. Однако для виртуального или выделенного сервера вы должны предусматривать все возможности для безопасности своего сервера.
Иметь ненужные порты открытыми - плохая идея, из которой злоумышленник может извлечь выгоду множеством способов.
Ниже представлены бесплатные онлайн сервисы, которые помогут выяснить открыты ли порты, чтобы вы могли проверить и заблокировать их, если они не используются.
Примечание: если вы запускаете сканер портов для 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 и т. д.Нас часто спрашивают, как проверить, открыт ли порт с помощью стандартных средств операционной системы 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 … », то запрашиваемый порт открыт, иначе – закрыт .
Мы вкратце рассмотрели, как проверить, открыт ли порт на компьютере. Если остались, какие либо вопросы, то задайте их в поле для комментариев.
Наверное, не нужно говорить, что иногда пользователю необходимо задействовать специальные порты для того, чтобы получить доступ, например, к онлайн-играм. Иногда этого требуют специализированные интернет-клиенты или сложные специфические программы. Попробуем разобраться, как проверить, открыты ли порты в системе. Как оказывается, сделать это не так уж и сложно.
Как проверить, открыты ли порты? Командная строка
Итак, начнем, пожалуй, с самого простого, что только имеется в распоряжении пользователя. Как правило, в большинстве случаев решение вопроса о том, как проверить, открыты ли порты в системе, сводится к использованию командной строки, функциональный набор которой достаточно разнообразен и позволяет не только просматривать специфичную информацию, но и исправлять множество ошибок или неполадок.
Доступ к ней осуществляется посредством прописывания в строке меню «Выполнить», которое, в свою очередь, вызывается либо из главного меню «Пуск», либо сочетанием 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. В некоторых случаях придется удостоверить в правильности настроек маршрутизатора, особенно в случае на роутере. Также следует обратить внимание на настройки брэндмауэра - возможно, именно он блокирует порт. Наконец, не исключается и вариант того, что на самом деле порт находится в открытом состоянии, а время его пинга (отклика) завышено.
Впрочем, речь сейчас не об этом, поскольку исправление таких ошибок и сбоев - отдельная тема. Что же касается проверки самих портов, как видно из всего выше изложенного, производится она достаточно просто. Поэтому если, допустим, у неподготовленного юзера возникает такая проблема, паниковать по незнанию сути вопроса не стоит. Любое из предложенных решений позволяет произвести такие операции в считанные секунды. В целом же очевидно, что при проверке, например, в режиме онлайн, пользователь должен точно знать, какой именно порт ему нужен. Но иногда проблема может быть связана еще и с тем, что данный порт блокируется провайдером. Тогда придется решать проблему именно на этом уровне.
Но, прежде чем начать и приступить к выявлению открытых портов и программы, которые на них висят, я хотел-бы, для общего понимания пояснить простейшим языком, и рассказать вкратце о том, что такое порт и тип программ работающих по типу «Сервер – Клиент »
Что такое порт и тип программ Сервер – Клиент?
Как вы понимаете, я не буду особо глубоко вникать в суть вопроса, и рассказывать на техническом, сложном языке о том, что такое порт, зачем он нужен итд. Я постараюсь коротко и на понятном языке объяснить для заинтересованных людей о том, что это такое и зачем!
Если говорить о вредоносных программах то ситуация выглядит вот так. Имеются две программы «Программа — Сервер » и «Программа – Клиент » Принцип работы подобных вещей такой:
Программа – Сервер : Всегда запускается на компьютере, к которому нужно получить не правомерный доступ.
Программа – Клиент : Запускается самим создателям или просто пользователем с целью управления удаленным компьютером!
Человек используя «Клиент » отправляет нужные ему команды, которые понимает сервер. Сервер в свою очередь принимает команды и выполняет соответствующие действия на удалённом компьютере.
Подобные вредоносные вещи, о которых идёт речь в данный момент имеют названия «BackDoor» Один из типов вредоносного программного обеспечения.
Думаю тут понятно. Сервер запускается на компьютере, который нужно ограбить, клиент запускается на компьютере, с которого происходит атака.
Как происходит подключения?
Что бы «Клиент» имел возможность подключиться к «Серверу» и получить доступ к удалённому компьютеру «Сервер» открывает какой-то «ПОРТ» и ждёт подключения от клиента. Порт может быть открыт любой, но в диапазоне «От 0 до 65535» таковы ограничения протокола «TCP/IP»
В момент запуска «Сервера» происходит следующие: Программа – сервер открывает некий порт, например «3123» когда от клиента приходит запрос на порт «3123», сервер понимает, что это ему и обрабатывает полученные данные.
К слову: Клиент, всегда должен точно знать, на каком порту весит сервер.
Так как существуют и легальные программы, которые используют определённые порты, например почтовые клиенты, всегда забирают себе 25 порт для отправки почты и 110 для приёма. Существует множество других популярных программ и по этой причины для всех популярных вещей зарезервирован диапазон «От 0 до 1023»
Поэтому вредоносные программы редко использую номера портов из диапазона «От 0 до 1023». Если Вы заметили, что, например порт 3123 открыт, и Вы не способствовали его открытию, стоит убедиться, что порт используется легальной программой, в противном же случае стоит найти и завершить программу, которая открыла данный порт…
Как узнать открытые порты и программы, которые их используют?
Как я сказал выше, мы будем узнавать открытые порты средствами «Windows» не используя сторонние программы и тем более online сервисы. Для работы нам понадобится только командная строка.
Запускаем «cmd.exe» получаем список открытых портов, а так же «PID» процессов, которые используют порты. Для этого используем команду «netstat» с параметрами «-a -o» и для удобства сохраняем результат выполнения команды в файл «*.txt» на диск «С:\»
Конечный вариант команды такой:
Default
netstat -a -o > C:\Port.txt
netstat - a - o > C : \ Port . txt |
После нажатия клавиши «Enter» нужно будет немного подождать, не долго.
После выполнения команды на диске «С» появится файл «Port.txt» В этом файле мы можем узнать открытые порты и «PID» процессов, которыми заняты порты.
Просматривая файл можно заметить не один открытый порт на компьютере, а некоторые из них весьма подозрительные. На скриншоте ниже я отметил уже знакомый нам порт «3123» предлагаю посмотреть, какой программой он был открыт.
Для получения имени процесса по его «PID» используем команду «tasklist» и смотрим, что за гадость открыла на нашем компьютере данный порт.
Для справки: Можно было изначально использовать команду «netstat» с параметрами «-a -b» в этом случаи мы сразу получили бы имена процессов.
Результат выполнения команды «tasklist» так же сохраняем в файл на диск, для удобного просмотра.
Default
tasklist > C:\ PID.txt
tasklist > C : \ PID . txt |
в итоге получаем файл «PID.txt» и зная что порт «3123» открыла программа с «PID — 3264» находим его и смотрим имя процесса.
Как видим имя программы «123.exe» не стал фантазировать, решил просто назвать «123» и все))
Сбор информации о файле и портах :
После получения списка открытых портов, можно узнать о них больше информации. Просто воспользуйтесь поиском «google.ru» и смотрите, что пишут о том или ином порте, а затем уже делайте выводы.
Так же ищите в сети названия процессов, которые Вам кажутся подозрительными.
Можно найти много информации и узнать несет за собой такой-то процесс угрозу или нет. Дело в том, что некоторые системные процессы тоже могут открыть какой-то порт для своих целей и убивать их не нужно, так как, это может привести к каким-то сбоям в работе всей системы.
В заключении.
Мы узнали — Как узнать открытые порты
, на компьютере используя команду «netstat
» Вы можете получить больше информации в самой справке по данной команде.
Как я уже говорил выше, можно было просто использовать параметры команды «-a -b» и не париться с получением имени процесса командой «tasklist» Сделал я так специально, что бы вкратце продемонстрировать для общего понимания работу команды «tasklist»
Надеюсь, у меня получилось понятно ответить на вопрос, Как узнать открытые порты. И у Вас больше не возникнет сложностей, если Вам нужно будет узнать открытые порты и программы которые их используют.
Источники: Википедия, Майкрософт, portscan.ru
Как узнать, какие порты открыты на компьютере?
- Для Windows: Пуск → «cmd» → Запустить от имени администратора → «netstat -bn»
- В антивируснике, таком как 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 |