// server management

Как настроить файрвол на Linux VPS с помощью UFW и iptables: практическое руководство

August 06, 2026 · by CLIQHOST

Как настроить файрвол на Linux VPS с помощью UFW и iptables: практическое руководство

Любой сервер Linux, доступный из интернета без правильно настроенного файрвола, — лёгкая мишень для злоумышленников. Неважно, что именно вы запускаете — WordPress, Node.js-приложение или почтовый сервер — настройка файрвола должна быть одним из первых шагов после получения доступа к VPS NVMe или VPS SSD.

В этом руководстве вы узнаете:
- Что такое UFW и iptables и когда их применять
- Как установить и активировать UFW на Ubuntu/Debian
- Какие правила необходимы для веб-сервера
- Как работать с iptables напрямую для сложных сценариев
- Типичные ошибки и как их избежать


Что такое файрвол на Linux и зачем он нужен

Файрвол — это первый уровень защиты вашего сервера. Он фильтрует входящий и исходящий сетевой трафик согласно правилам, которые вы задаёте.

На Linux в основе лежит netfilter — модуль ядра. Поверх него работают два основных инструмента:

  • iptables — классический инструмент с широкими возможностями, но сложным синтаксисом
  • UFW (Uncomplicated Firewall) — удобная надстройка над iptables, рекомендуется для Ubuntu/Debian

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


Установка и настройка UFW

1. Проверьте, установлен ли UFW

На Ubuntu 20.04/22.04 и Debian 11/12 UFW присутствует по умолчанию. Проверьте статус:

sudo ufw status verbose

Если не установлен:

sudo apt update && sudo apt install ufw -y

2. Установите политики по умолчанию

До активации UFW определите базовое поведение: блокировать всё входящее, разрешить всё исходящее.

sudo ufw default deny incoming
sudo ufw default allow outgoing

Это принцип «нулевого доверия» на уровне сети — ничто не пропускается без явного разрешения.

3. Разрешите SSH — обязательно до активации!

⚠️ Внимание: Если активировать UFW без разрешения SSH, вы заблокируете себя на собственном сервере!

sudo ufw allow 22/tcp

Если вы изменили порт SSH (рекомендуется, например, порт 2222):

sudo ufw allow 2222/tcp

4. Активируйте UFW

sudo ufw enable

Система предупредит о возможном разрыве соединений. Подтвердите, введя y.


Базовые правила для веб-сервера

Если вы хостите сайт на WordPress хостинге или используете Nginx/Apache, откройте порты HTTP и HTTPS:

sudo ufw allow 80/tcp    # HTTP
sudo ufw allow 443/tcp   # HTTPS

Или через профиль приложения:

sudo ufw allow 'Nginx Full'
# или
sudo ufw allow 'Apache Full'

Правила для дополнительных сервисов

Сервис Команда UFW
MySQL (только локально) sudo ufw deny 3306
MySQL (конкретный IP) sudo ufw allow from 192.168.1.100 to any port 3306
FTP пассивный sudo ufw allow 21/tcp
Email SMTP sudo ufw allow 25/tcp
Email IMAPS sudo ufw allow 993/tcp

Ограничьте SSH конкретным IP-адресом

Если вы хотите разрешить SSH только с одного IP (например, офисного):

sudo ufw allow from 89.34.56.78 to any port 22
sudo ufw delete allow 22/tcp

Это один из самых эффективных способов защиты от брутфорс-атак.


Управление правилами UFW

Просмотр правил с нумерацией

sudo ufw status numbered

Пример вывода:

Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 80/tcp                     ALLOW IN    Anywhere
[ 3] 443/tcp                    ALLOW IN    Anywhere

Удаление правила по номеру

sudo ufw delete 3

Сброс всех правил

sudo ufw reset

Внимание: эта команда деактивирует UFW и удаляет все правила!


Основы iptables — для продвинутых сценариев

UFW покрывает большинство задач, но iptables открывает максимальный контроль. Это особенно актуально при управлении неуправляемым выделенным сервером со сложными сетевыми требованиями.

Структура iptables

iptables работает с таблицами, цепочками и правилами:
- Основные таблицы: filter, nat, mangle
- Цепочки: INPUT, OUTPUT, FORWARD

Базовые команды

Просмотр текущих правил:

sudo iptables -L -v -n

Блокировка подозрительного IP:

sudo iptables -A INPUT -s 45.67.89.123 -j DROP

Разрешение порта 443:

sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

Защита от ICMP-флуда:

sudo iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
sudo iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

Сохранение правил iptables

Правила iptables не сохраняются после перезагрузки! Для персистентности:

sudo apt install iptables-persistent -y
sudo netfilter-persistent save

UFW против iptables: что выбрать?

Критерий UFW iptables
Простота использования ✅ Очень просто ⚠️ Сложный синтаксис
Гранулярный контроль ⚠️ Ограничен ✅ Максимальный
Рекомендуется для Простых VPS, сайтов Сложных серверов, маршрутизаторов
Автоматическое сохранение ✅ Да ❌ Требует настройки

Для VPS с одним vCore, на котором работает блог или интернет-магазин, UFW будет полностью достаточен.


Типичные ошибки, которых следует избегать

  1. Активация UFW без разрешения SSH — вы заблокируете себя на сервере
  2. Открытый порт MySQL (3306) для всех — высокий риск несанкционированного доступа
  3. Несохранённые правила iptables — после перезагрузки сервер остаётся незащищённым
  4. ufw allow from any для всего — файрвол теряет смысл
  5. Забытый IPv6 — в /etc/default/ufw убедитесь, что IPV6=yes

Проверка конфигурации файрвола

После настройки проверьте сервер снаружи с помощью nmap:

nmap -sV -p 22,80,443,3306 IP_ВАШЕГО_СЕРВЕРА

Нежелательные порты должны отображаться как filtered или closed, но не open.

Также можно воспользоваться онлайн-инструментом Shields Up от GRC для быстрой проверки из браузера.


Вывод

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

Если вы хотите сосредоточиться на своём проекте и доверить администрирование сервера профессионалам, ознакомьтесь с услугами управления серверами от CLIQHOST — безопасность, мониторинг и оптимизация в одном пакете.

Есть вопросы по настройке вашего сервера? Свяжитесь с нашей командой — мы готовы помочь.

SHARE
// Что говорят наши клиенты

Что говорят наши клиенты

Реальные отзывы клиентов, которые доверяют CLIQHOST за производительность, надёжность и профессиональную техническую поддержку.

★★★★★

"We moved our online shop from a foreign host and the difference is night and day — pages load instantly and support replies in minutes, in Romanian."

AM
Andrei M.
eCommerce owner · Chișinău
★★★★★

"Migrated 12 client sites to CLIQHOST. Free migration, zero downtime, and the cPanel setup is exactly what my team needed. Highly recommend."

EV
Elena V.
Web agency · Bălți
★★★★★

"Our NVMe VPS handles traffic spikes without a sweat. Full root, local datacenter, and billing in MDL — everything we wanted from a provider."

DC
Dmitri C.
SaaS founder · Chișinău