Что такое порт и зачем следить за открытыми портами
4 мин чтения
Что такое порт и зачем следить за открытыми портами

Что такое порт и зачем следить за открытыми портами

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

Как это работает

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

Служба, готовая принимать соединения, слушает свой порт. Если на порту никто не слушает, операционная система сразу отвечает отказом — отсюда знакомая ошибка «соединение отклонено». Если же порт закрыт файрволом, ответа не будет вовсе, и клиент будет ждать до истечения таймаута. Разница заметна на практике: мгновенный отказ означает, что упало приложение, а долгое молчание — что запрос режет защита или сеть.

Порт Служба Что означает недоступность
80 и 443 Веб-сервер: HTTP и HTTPS Сайт не открывается ни у кого
22 SSH — удалённое управление Вы не сможете зайти на сервер, чтобы починить остальное
25, 465, 587 Отправка почты Не уходят письма о заказах и восстановление пароля
143 и 993 Приём почты по IMAP Почтовые клиенты не видят новых писем
3306 и 5432 Базы данных MySQL и PostgreSQL Сайт отдаёт ошибку подключения к базе
6379 Redis — кэш и очереди Сайт резко замедляется или перестают обрабатываться задачи

Три уровня доступности

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

Хост жив. Машина отвечает на ping — значит, сервер включён и сеть до него доходит. О работе сайта это не говорит ничего.

Порт открыт. На нужном порту кто-то слушает и соединение устанавливается. Значит, служба запущена — но ещё не факт, что она отвечает осмысленно.

Приложение отвечает правильно. Сервис возвращает ожидаемый ответ: страницу с кодом 200, корректный JSON, приветствие почтового сервера.

Типичная авария живёт ровно между уровнями: сервер бодро отвечает на ping, потому что операционная система работает, а веб-сервер на 443 порту упал — и сайт недоступен. Проверка только пингом такую поломку не заметит.

Открытые порты как риск

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

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

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

Про смену порта SSH

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

Что стоит мониторить

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

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

Как это устроено в Пруфене

Пруфен умеет проверять открытые порты с интервалом от 2 минут из 13 точек: если служба перестала принимать соединения, приходит уведомление на Email, в Telegram, в Макс или звонком, а когда она поднимется — второе. Проверку порта разумно ставить в пару к проверке сайта: первая показывает, что служба запущена, вторая — что она отвечает правильно. Бесплатно доступны 5 проверок без ограничения по времени.

Частые вопросы

Чем отличается проверка порта от проверки сайта? Проверка порта устанавливает соединение и убеждается, что служба слушает. Проверка сайта идёт дальше: делает запрос и смотрит на код ответа и содержимое. Порт может быть открыт, а сайт при этом отдавать ошибку 500 — первая проверка этого не увидит.

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

Обязательно ли держать открытым 80-й порт, если сайт на HTTPS? Да, обычно его оставляют — чтобы принять запросы по HTTP и перенаправить их на защищённую версию. Кроме того, через 80-й порт проходит проверка домена при автоматическом выпуске сертификатов.

Сколько портов проверять? Ровно те, поломка которых означает для вас потерю денег или данных. Для типичного сайта это веб-порт и порт отправки почты; для сервиса с внешней базой — ещё и порт базы. Проверять всё подряд смысла нет.

Была ли статья полезна?

Начните мониторинг прямо сейчас

Бесплатный тариф — до 5 проверок. 150 ₽ на баланс при регистрации.

Создать аккаунт