Как проверить порт сервера: онлайн и через командную строку
Нужно проверить порт сервера и понять, почему программа не подключается? Покажем три способа: онлайн-сервис, команды Windows и команды Linux или macOS. Вы узнаете, чем открытый порт отличается от закрытого и фильтруемого, и что делать, если проверка не прошла. Если порт открыт, а сайт всё равно не открывается, проверьте записи домена через DNS checker.

Коротко
- Портов у одного IP-адреса 65 536: номера идут от 0 до 65535
- SSH по умолчанию слушает TCP-порт 22, HTTP — 80, HTTPS — 443
- У порта три состояния: открыт, закрыт и фильтруется (файрвол молчит)
- Онлайн-проверка обычно занимает 1–10 секунд и не требует установки программ
- В Windows порт проверяет команда Test-NetConnection, в Linux и macOS — nc -zv
- Проверять порт нужно снаружи, с другого устройства, а не с самого сервера
- Сами проверки бесплатны: платить придётся только за сам сервер
Что значит проверить порт и зачем это нужно
Порт — это номер «двери», через которую программа принимает подключения на IP-адресе (Internet Protocol, сетевой адрес устройства). У одного адреса 65 536 портов: номера идут от 0 до 65535. Если адрес 203.0.113.10 — это дом, то порт 22 — дверь, за которой ждёт SSH (Secure Shell, удалённый доступ к серверу).
Проверить порт — значит выяснить, отвечает ли за нужной дверью служба. Делайте это снаружи, с другого устройства: так вы увидите то же, что видят ваши клиенты. Сама проверка бесплатна, но проверять можно только свои серверы или те, на которые есть разрешение владельца.
Сначала убедитесь, что адрес указан верно: в этом помогут статьи о том, как проверить IP-адрес и как выполнить проверку IP сервера. Если адрес правильный, а проблема осталась, проверьте порт в таких ситуациях:
- SSH не подключается к VPS (виртуальному серверу) на порту 22;
- сайт не открывается по порту 80 (HTTP) или 443 (HTTPS);
- почта не отправляется через порт 25 (SMTP);
- приложение не достучалось до базы данных MySQL на порту 3306.
Как работает проверка порта: открыт, закрыт или фильтруется
Проверяющий отправляет запрос на IP-адрес и номер порта, а затем смотрит, что ответил сервер. Например, к VPS с адресом 203.0.113.10 он обращается на порт 22, где по умолчанию слушает SSH. У одного адреса 65 536 портов, от 0 до 65535: системные 0–1023, зарегистрированные 1024–49151 и динамические 49152–65535. Диапазоны адресов можно рассчитать в IP-калькуляторе.
Чаще всего проверяют TCP (Transmission Control Protocol): он сначала устанавливает соединение, поэтому ответ или отказ видны сразу. UDP (User Datagram Protocol) соединение не создаёт, и тишина в ответ на запрос не всегда значит, что порт закрыт. Проверка UDP менее надёжна и требует другого инструмента.
Запрос проходит три звена: файрвол провайдера, файрвол на сервере и саму службу. Любое звено может его остановить, поэтому порт нужно открыть во всех трёх местах. Если служба слушает только 127.0.0.1, снаружи она недоступна, нужен адрес 0.0.0.0. Узнайте больше о том, что такое VDS-сервер и где у него стоит файрвол.
Результат проверки бывает трёх видов:
- Открыт — служба слушает порт и отвечает на запрос.
- Закрыт — сервер получил запрос и сразу ответил отказом, службы на порту нет.
- Фильтруется — ответа нет, обычно работает файрвол, и проверка завершается по таймауту, например через 5 секунд.

Как проверить порт онлайн и с компьютера: пошаговая инструкция
Разберём проверку на примере VPS (виртуального сервера) с адресом 203.0.113.10 и службой SSH (Secure Shell, защищённый удалённый доступ) на порту 22. Те же шаги подходят для любого другого порта из 65 536 возможных.
Порт нужно открыть в трёх местах: в самой службе, в файрволе на сервере и в панели провайдера. Поэтому проверяйте по цепочке, от сервера к внешней сети. Проверять можно только свои серверы или те, на которые есть разрешение владельца. Подробнее о самой проверке читайте в статье как проверить порт и понять результат.
Пройдите семь шагов по порядку:
- Узнайте IP-адрес сервера в панели провайдера. В примере это
203.0.113.10. Если адрес неизвестен, определите местоположение по IP и убедитесь, что это нужный сервер. - Определите порт службы: SSH использует
22, сайт по HTTP —80, по HTTPS —443. - Подключитесь к серверу и выполните
ss -tlnp | grep :22. Если строка сLISTENесть, служба слушает порт. Адрес127.0.0.1означает, что снаружи служба недоступна, нужен0.0.0.0. - Проверьте файрвол командой
sudo ufw status. Если правила для порта нет, добавьте его:sudo ufw allow 22/tcp. - Откройте сервис
2ip.io/ru/check-port, введите203.0.113.10и порт22, нажмите проверку. Результат придёт обычно за 1–10 секунд. - Проверьте со своего компьютера. В Windows (PowerShell) выполните
Test-NetConnection -ComputerName 203.0.113.10 -Port 22и найдите строкуTcpTestSucceeded : True. В Linux и macOS выполнитеnc -zv -w 5 203.0.113.10 22, где-w 5задаёт таймаут 5 секунд. - Сравните результаты и прочитайте статус: «открыт» — служба отвечает, «закрыт» — сервер отказывает, «фильтруется» — ответа нет, обычно работает файрвол.

Какие порты проверяют чаще всего
Портов у одного IP-адреса 65 536: номера идут от 0 до 65535. Системные порты занимают диапазон 0–1023, зарегистрированные — 1024–49151, динамические — 49152–65535. На практике вы проверяете лишь несколько номеров, за которыми стоят привычные службы.
Начинайте с порта той службы, которая не отвечает. В нашем примере VPS (виртуальный сервер) с адресом 203.0.113.10: порт 22 проверяйте, когда не получается войти по SSH, а 80 и 443 — когда сайт не открывается. Если не уверены, какая служба и база нужны вашему сайту, узнайте CMS сайта (систему управления содержимым).
| Порт | Протокол | Служба | Что проверяем |
|---|---|---|---|
| 21 | TCP | FTP (передача файлов) | Доступ для загрузки файлов |
| 22 | TCP | SSH (защищённый удалённый доступ) | Вход в консоль сервера |
| 25 | TCP | SMTP (отправка почты) | Работу почтового сервера |
| 53 | UDP и TCP | DNS (система доменных имён) | Ответы на запросы имён |
| 80 | TCP | HTTP (передача веб-страниц) | Открытие сайта без шифрования |
| 443 | TCP | HTTPS (HTTP с шифрованием) | Открытие сайта по защищённому каналу |
| 3306 | TCP | MySQL | Подключение к базе данных |
| 3389 | TCP | RDP (удалённый рабочий стол Windows) | Вход на Windows-сервер |
| 5432 | TCP | PostgreSQL | Подключение к базе данных |
| 8080 | TCP | Альтернативный HTTP | Тестовые сайты и панели управления |
Порты баз данных, 3306 и 5432, лучше не открывать всему интернету: боты подбирают пароли к ним круглосуточно. Разрешите доступ только с нужных адресов, например командой sudo ufw allow from 198.51.100.5 to any port 5432 proto tcp. Если ещё выбираете систему, сравните PostgreSQL и MySQL.
Сколько времени занимает проверка порта и что на неё влияет
Онлайн-сервис обычно отвечает за 1–10 секунд. Команда nc -zv -w 5 203.0.113.10 22 ждёт не дольше 5 секунд: параметр -w 5 задаёт таймаут. Если порт закрыт, сервер отказывает сразу. Если порт фильтруется, ответа нет, и проверка длится до конца таймаута.
Сама проверка бесплатна. Открытие порта на VPS (виртуальном сервере) обычно не требует доплаты, но условия зависят от провайдера и тарифа. Платить придётся только за сам сервер.
Часть возможностей определяет тариф. Так, тип диска, NVMe или SATA, тоже зависит от тарифа, а разницу между ними разобрали отдельно. Доступ к настройкам файрвола на некоторых тарифах ограничен.
Результат проверки зависит от нескольких условий:
- файрвол на сервере: правила покажет
sudo ufw status; - фильтры в панели провайдера, которые режут трафик до сервера;
- ограничения тарифа на входящие соединения;
- расположение проверяющего: из другой сети или страны результат может отличаться;
- адрес службы: при
127.0.0.1снаружи порт недоступен, нужен0.0.0.0.
localhost с самого сервера показывает открытый порт, хотя снаружи он закрыт. Запускайте проверку с другого устройства или через онлайн-сервис.Типичные ошибки при проверке порта и что с ними делать
Если проверка показывает «закрыт» или «фильтруется», дело обычно не в сервисе проверки, а в настройках сервера. Порт нужно открыть в трёх местах: в службе, в файрволе на сервере и в панели провайдера. Достаточно пропустить одно из них, и подключение не пройдёт.
Чаще всего встречаются четыре ошибки:
- служба не запущена или слушает только
127.0.0.1; - порт закрыт файрволом на сервере;
- порт не открыт в панели провайдера;
- перепутаны TCP и UDP либо IP-адрес.
Служба не запущена или слушает только 127.0.0.1
Выполните на сервере ss -tlnp | grep :22. Если строки нет, служба не запущена: запустите её. Если в строке адрес 127.0.0.1:22, служба принимает подключения только изнутри. Замените адрес прослушивания в конфигурации на 0.0.0.0 и перезапустите службу.
Порт закрыт файрволом на сервере
В Ubuntu посмотрите правила командой sudo ufw status. Если порта 22 в списке нет, откройте его: sudo ufw allow 22/tcp. После этого повторите проверку снаружи.
Порт не открыт в панели провайдера
Даже при верных настройках сервера внешний файрвол провайдера может блокировать трафик. Найдите в панели управления VPS раздел с правилами сетевой защиты и добавьте разрешение для нужного порта. Названия разделов зависят от провайдера, а доплаты за это обычно не требуется.
Перепутаны TCP и UDP либо IP-адрес
SSH работает по TCP, а для звонков и видеосвязи часто нужен UDP, как в статье про порты для звонков в Nextcloud Talk. Сверьте и адрес: в нашем примере это 203.0.113.10, а не адрес домашнего роутера. Проверяйте с другого устройства, а не с самого сервера.
Идите по цепочке: служба, файрвол, панель провайдера. После каждого шага запускайте nc -zv -w 5 203.0.113.10 22 и смотрите, что изменилось. Другие способы описаны в подробной инструкции по проверке порта.

Онлайн-сервис или командная строка: что выбрать
Онлайн-сервис, например 2ip.io/ru/check-port, не требует установки программ и показывает порт глазами внешнего пользователя. Вводите адрес 203.0.113.10 и порт 22, а ответ приходит обычно за 1–10 секунд. Такой способ подходит, если вы впервые проверяете порт нового VPS и хотите понять, доступна ли служба из интернета.
Командная строка работает из вашей сети: в Windows это Test-NetConnection -ComputerName 203.0.113.10 -Port 22, в Linux и macOS — nc -zv -w 5 203.0.113.10 22. Команду можно повторять, запускать по расписанию и вставлять в скрипты, а таймаут -w 5 задаёт ожидание в 5 секунд. Если нужно найти, на каком этапе пропадает соединение, этот способ даёт больше контроля.
У обоих способов есть минусы. Онлайн-сервис видит порт только с одной точки, поэтому не покажет, что сервер недоступен из вашего города или из офисной сети. Командная строка зависит от вашего подключения: провайдер или корпоративный файрвол (программа фильтрации трафика) могут блокировать порт, хотя снаружи он открыт.
Как выбрать:
- для первой проверки возьмите онлайн-сервис;
- для диагностики и автоматизации используйте команды;
- для надёжного вывода проверьте порт обоими способами и сравните результаты.
Если результаты расходятся, проблема обычно в вашей сети, а не на сервере. Чтобы убедиться, что адрес сервера указан верно, прочитайте как выполнить проверку IP сервера. А если проверять пока нечего, можно подобрать VPS под вашу задачу и сразу проверить на нём порт 22.
Когда проверка порта не поможет
Проверка показывает одно: отвечает порт или нет. Если сайт не открывается, а порт 443 отвечает, причина в другом. На виртуальном хостинге вы не управляете файрволом: портами 80 и 443 занимается провайдер, и изменить их в настройках аккаунта нельзя.
Порт ни при чём и тогда, когда сбоит DNS (Domain Name System, система доменных имён). Домен может указывать на старый IP-адрес, и вы проверяете не тот сервер. Бывает и так: порт 443 открыт, но приложение отдаёт ошибку 500 или 502. Тогда смотрите логи приложения, а не правила файрвола.
Ограничить доступ по IP (адресу в сети) тоже нельзя одной проверкой: для этого нужны правила файрвола, например sudo ufw allow from 198.51.100.7 to any port 22. Проверять можно только свои серверы или те, на которые есть разрешение владельца. Если вам нужен полный контроль над портами, выберите VPS (виртуальный выделенный сервер) с root-доступом, где вы сами настраиваете службы и файрвол. Вы можете подобрать VPS под свою задачу, а как устроен такой сервер, объясняет статья что такое VDS-сервер.
Частые вопросы
Как проверить порт на сервере онлайн?
Как проверить, открыт ли порт на моём компьютере?
Чем закрытый порт отличается от фильтруемого?
Почему порт закрыт, хотя я его открыл?
Как проверить UDP-порт?
Можно ли проверять порты чужого сервера?
Как узнать, какая программа занимает порт?
Нужно ли менять стандартный порт 22 для SSH?
Сколько длится проверка порта?
Платная ли проверка порта?
Проверьте себя
- Служба запущена и слушает нужный порт: ss -tlnp | grep :22
- Служба слушает адрес 0.0.0.0, а не только 127.0.0.1
- Порт разрешён в файрволе сервера, например sudo ufw allow 22/tcp
- Порт открыт в панели провайдера
- Проверка сделана снаружи, а не через localhost
- Протокол указан верно: TCP или UDP
- Результат подтверждён вторым способом: онлайн и командой
На сайте есть партнёрские ссылки: если вы оформите заказ по ним, мы получим вознаграждение от провайдера. Это не влияет на цену для вас и на место в рейтинге.