Как настроить файрвол на VPS в 2026 году

Как настроить файрвол на VPS в 2026 году

Файрвол на VPS ограничивает входящие подключения и оставляет доступными только нужные сервисы: сайт, корпоративную почту, панель администрирования или VPN. В статье разберём безопасную последовательность настройки для небольшого бизнеса: сначала проверим текущие порты, затем включим правила, сохраним доступ по SSH и протестируем результат. Примеры подойдут для сервера с Ubuntu или Debian, но перед применением команд проверьте версию операционной системы.

Зачем малому бизнесу настраивать файрвол на VPS?

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

Для типичного VPS достаточно разрешить SSH для администрирования, HTTP и HTTPS для сайта. Если на сервере работает корпоративная почта, понадобятся дополнительные почтовые порты. Их список зависит от используемого почтового программного обеспечения, поэтому его берут из документации конкретного сервиса, а не копируют из случайной инструкции.

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

Что проверить перед изменением правил?

Сначала подключитесь к VPS по SSH и убедитесь, что у вас есть второй способ доступа. Это может быть консоль управления сервером у провайдера. Такой канал нужен на случай, если новое правило случайно заблокирует SSH.

Посмотрите, какие службы слушают сетевые порты. В Linux для этого подходит команда:

sudo ss -tulpn

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

Проверьте, под каким пользователем вы вошли, и сохраните текущую конфигурацию. Перед изменением сетевых правил полезно сделать снимок VPS или резервную копию конфигурационных файлов. Команды ниже рассчитаны на UFW, который часто используют как простой интерфейс управления встроенным фильтром Linux.

Как настроить UFW и не потерять SSH-доступ?

Установите UFW, если его ещё нет:

sudo apt update
sudo apt install ufw

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

sudo ufw default deny incoming
sudo ufw default allow outgoing

Теперь разрешите SSH. Если служба использует стандартный порт, можно применить такую команду:

sudo ufw allow 22/tcp

Когда SSH работает на другом порту, укажите его вместо 22. Например:

sudo ufw allow 2222/tcp

Открывайте только тот вариант, который реально используется. Если разрешить порт 22, хотя SSH слушает 2222, подключиться после включения правил не получится.

Для обычного сайта добавьте веб-трафик:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Порт 80 нужен для HTTP, а 443 используется для HTTPS. Если сайт работает только по HTTPS и перенаправление с HTTP не требуется, порт 80 можно не открывать. При использовании сертификата и автоматического обновления проверьте, нужен ли веб-серверу временный доступ по HTTP.

После проверки правил включите UFW:

sudo ufw enable

Система попросит подтвердить действие. Если SSH уже разрешён, соединение обычно продолжится, но окно терминала закрывать сразу не нужно. Выполните проверку:

sudo ufw status verbose

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

sudo ufw status numbered

Как ограничить доступ к панели и административным портам?

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

sudo ufw allow from 203.0.113.10 to any port 8443 proto tcp

В примере 203.0.113.10 — условный внешний IP-адрес, а 8443 — условный порт панели. Перед применением замените оба значения на реальные. Если у офиса динамический адрес, такое правило придётся обновлять при его смене.

Для внутреннего приложения можно разрешить соединения только из частной сети сервера:

sudo ufw allow from 10.0.0.0/8 to any port 8080 proto tcp

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

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

Как проверить файрвол после настройки?

Проверку выполняйте с другого устройства или сервера. Откройте сайт по HTTP и HTTPS, подключитесь по SSH и отдельно проверьте административную панель. Если на VPS работает почта, протестируйте отправку и получение сообщений через предусмотренные почтовые порты.

На самом сервере снова выполните:

sudo ss -tulpn
sudo ufw status numbered

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

После изменений понаблюдайте за журналом UFW:

sudo journalctl -k | grep UFW

Если журнал быстро растёт, сначала выясните причину. Много заблокированных запросов само по себе не доказывает атаку: публичный VPS регулярно получает автоматические попытки подключения к распространённым портам. Для рабочих серверов полезно настроить отдельные уведомления о недоступности сайта, заполнении диска и проблемах с сервисами. Подход к такой проверке описан в материале о мониторинге VPS для малого бизнеса.

Типичные ошибки при настройке файрвола

  • Включить UFW до разрешения SSH и потерять удалённый доступ.
  • Открыть диапазон портов вместо одного конкретного порта.
  • Разрешить панель или базу данных для всех адресов, хотя ими пользуются только сотрудники.
  • Удалить правило, не проверив его номер в выводе ufw status numbered.
  • Считать файрвол заменой обновлениям, резервному копированию и контролю пользователей.
  • Изменить порт SSH и не проверить подключение из новой сессии.

3 шага, которые можно сделать сегодня:

  1. Выполнить ss -tulpn и составить список служб, которым нужен внешний доступ.
  2. Разрешить SSH, HTTP и HTTPS только в нужной конфигурации, затем включить UFW.
  3. Проверить сайт, SSH, почту и панели с другого устройства, после чего сохранить список правил и резервную копию конфигурации.