Настройка UFW в Ubuntu и Debian

26 Jun 2026, 10:06:07
UFW - это утилита для управления межсетевым экраном Linux. Изначально она была разработана для Ubuntu, но также доступна во многих других дистрибутивах. Утилита фактически является фронтендом для iptables и создана с целью упрощения взаимодействия с фаерволом посредством человеко-читаемого синтаксиса. UFW поставляется по умолчанию в современных версиях ОС Ubuntu и может быть установлена в других дистрибутивах на базе Debian из репозиториев системы. На виртуальных серверах с Ubuntu Server UFW также установлена из коробки. В этой статье мы разберём первоначальную настройку и базовый синтаксис популярной утилиты, а также настроим фаервол на новом VPS с Ubuntu Server 24.04.

Установка UFW

В ОС Ubuntu и Ubuntu Server утилита установлена по умолчанию. Проверить это можно командой проверки статуса UFW:
ufw status
Такой вывод команды говорит о том, что UFW установлен, но не включен.
Если в ответ вы видите сообщение о том, что программа не установлена, установить её в операционных системах Debian и Ubuntu можно командами:
apt update
apt install ufw
После установки фаервол также будет выключен, но не торопитесь его включать, сначала мы выполним его базовую настройку.

Политика по умолчанию

Начнём с того, что определим политики по умолчанию для входящего и исходящего трафика на сервере. Реализуем базовую схему безопасности:
  • все входящие подключения запрещены (кроме разрешённых правилами);
  • все исходящие подключения разрешены.
Это позволит открыть или ограничить доступ к сервисам, которые мы хотим сделать доступными в сети.
Запрет всех входящих подключений к серверу:
ufw default deny incomingОткрыть доступ для всех исходящих подключений:
ufw default allow outgoingВ примере мы выполняем эти команды подключившись к VPS по SSH. Наше соединение не разорвало, потому что UFW имеет статус inactive. Мы специально не включили его изначально, чтобы без опаски добавить все необходимые правила.

Добавление правил

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

Открыть доступ к серверу по SSH

Команда для базового случая выглядит так:
ufw allow sshЕсли она была добавлена без ошибок, вы получите сообщение об успешном обновлении списка правил:

Однако одно из самых популярных правил безопасности для серверов - сменить порт SSH. По этому базовый случай подходит не всегда. Если порт SSH на вашем сервере отличается от дефолтного, его необходимо указать конкретно:
ufw allow 2245/tcp
  • 2245 - SSH-порт сервера;
  • tcp - протокол (если не указать, порт будет открыт для TCP и UDP протоколов).
Более того, чтобы повысить уровень безопасности, можно разрешить доступ только с определённого IP или подсети IP:
ufw allow from 192.168.1.0/24 to any port 2245 proto tcp
  • 192.168.1.0/24 - IP-адрес или подсеть, из которых разрешить подключения;
  • 2245 - порт SSH;
  • tcp - протокол.
Эти базовые правила и есть то, что необходимо сделать на новом сервере после его получения.

Открыть доступ к HTTP/HTTPS

Если вы планируете использовать веб-сервер, необходимо открыть стандартные HTTP/S порты (80 и 443):
ufw allow 80/tcp  
ufw allow 443/tcp

Просмотр правил UFW

Чтобы просмотреть правила, которые мы добавили ранее, не включая UFW, воспользуйтесь командой:
ufw show addedТак мы можем убедиться в логике наших правил, ведь после запуска UFW мы можем случайно ограничить доступ даже для нашей текущей сессии.

Когда UFW активен, актуальные правила можно просмотреть командой:
ufw statusи
ufw status numberedПоследняя выводит нумерованный список правил. Это полезно для дальнейшего удобного взаимодействия с ними.

Удаление правил

Чтобы удалить правило UFW воспользуйтесь командой:
ufw delete [RULE_FOR_DELETING]
  • [RULE_FOR_DELETING] - правило в полном виде, которое нужно удалить.

Удобнее вывести нумерованный список правил и удалить его по номеру:
ufw delete [NUMBER_OF_RULE]
  • [NUMBER_OF_RULE] - номер правила из списка.

Включение UFW

Чтобы все правила, которые были добавлены ранее, наконец вступили в силу, необходимо включить фаервол с помощью команды:
ufw enableНажать y для подтверждения запуска.

Выключение UFW

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

Поддержка IPv6

UFW умеет работать как с IPv4, так и с IPv6. В большинстве современных версий Ubuntu и Debian поддержка IPv6 в UFW включена по умолчанию. Это видно при обновлении правил, а также указано в конфигурационном файле UFW:
grep "IPV6" /etc/default/ufwЕсли поддержка IPv6 включена, вы увидите:

Если нет - включить её можно изменив указанный параметр (IPV6) в файле конфигурации:
nano /etc/default/ufw
Сохранить изменения сочетанием клавиш Ctrl+O и выйти Ctrl+X.
Для применения изменений необходимо перезагрузить UFW с помощью команды:
ufw disable && ufw enableНажать y для подтверждения операции.

Логирование в UFW

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

Включить логирование

Чтобы включить запись журнала воспользуйтесь командой:
ufw logging on

Уровень логирования

В UFW есть 4 уровня логирования: lowmediumhigh и full. Градация уровней происходит по количеству выводимой информации от low до full соответственно. Уровня low достаточно для получения информации о срабатывании правил блокировки.
Чтобы установить определённый уровень воспользуйтесь командой:
ufw logging medium
  • medium - уровень логирования.

Отключить логирование UFW

Для отключения журнала событий воспользуйтесь командой:
ufw logging off

Просмотр логов UFW

Журнал событий UFW по умолчанию хранится в файле /var/log/ufw.log. Просмотреть последние 100 строк файла можно командой:
tail -100 /var/log/ufw.log

Сброс настроек UFW

Для полного сброса всех правил и политик фаервола воспользуйтесь командой:
ufw resetКоманда отключит UFW, удалит все правила и настройки, восстановит политики по умолчанию.

Заключение

Многие опытные администраторы предпочитают напрямую работать с iptables, однако UFW остаётся популярным благодаря простоте настройки. Для простых пользователей это понятный и простой инструмент для реализации базового уровня безопасности своего сервера и не только.
Всего несколько простых команд помогут отсеять ненужный трафик и защитить ваш SSH, FTP или даже СУБД, существенно снизить риск несанкционированного доступа.