Защита сетевого доступа с помощью UFW

Информационная безопасность — один из важнейших аспектов современной IT-инфраструктуры. Один из базовых, но эффективных способов усиления защиты — настройка брандмауэра. Среди простых в использовании решений выделяется UFW (Uncomplicated Firewall) — удобный интерфейс для управления сетевыми правилами, работающий поверх iptables или nftables.

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

Просмотр текущих активных правил файрвола с их нумерацией — основа ручного управления.



Установка и запуск

В большинстве современных Linux-систем UFW доступен в стандартных репозиториях. Для установки используйте соответствующий менеджер пакетов вашей системы:

Bash
sudo apt update && sudo apt install ufw -y  # Для систем с apt:
sudo dnf install ufw                        # Для систем с dnf
sudo pacman -S ufw                          # Для систем с pacman

Запуск и включение:

Bash
sudo ufw enable

Проверка состояния:

Bash
sudo ufw status verbose

⚠️ Важно: Перед включением убедитесь, что доступ к важным сервисам (например, SSH) разрешён, иначе можно потерять доступ к системе.

Bash
sudo ufw allow ssh # Разрешить соединения по SSH

Настройка базовой политики

По умолчанию рекомендуется запретить весь входящий трафик и разрешить исходящие соединения:

Bash
sudo ufw default deny incoming
sudo ufw default allow outgoing

Это означает, что никакие внешние подключения не будут приняты, пока вы явно не разрешите нужные порты и протоколы.

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

Разрешение необходимых сервисов

UFW позволяет разрешить конкретные порты и протоколы для входящих соединений. Например:

Bash
sudo ufw allow 22/tcp    # SSH
sudo ufw allow 80/tcp    # HTTP
sudo ufw allow 443/tcp   # HTTPS

Для других сервисов, например баз данных, FTP, VoIP и т.д., используйте соответствующие порты:

Bash
sudo ufw allow 5432/tcp  # PostgreSQL
sudo ufw allow 21/tcp    # FTP

Можно указать диапазоны портов и протоколы:

Bash
sudo ufw allow 10000:20000/udp

💡Совет: Проверяйте документацию используемых вами сервисов для определения нужных портов и протоколов.

Можно указывать не только порт, но и интерфейс, IP, подсеть и протокол. Например:

Bash
sudo ufw allow from 192.168.1.0/24 to any port 22 proto tcp

Пример применения UFW для ограничения доступа только из корпоративной сети.

Ограничение частоты подключений

Для защиты от атак методом перебора паролей (brute-force), особенно по SSH, используйте ограничение частоты подключений:

Bash
sudo ufw limit 22/tcp

Это правило разрешает подключение к SSH, но блокирует IP-адреса, совершающие более 6 попыток в минуту.

ВремяIP-адресПортСтатус
12:00:01192.168.1.1022✅ Разрешено
12:00:10192.168.1.1022✅ Разрешено
12:00:15192.168.1.1022✅ Разрешено
12:00:20192.168.1.1022✅ Разрешено
12:00:25192.168.1.1022✅ Разрешено
12:00:30192.168.1.1022✅ Разрешено
12:00:35192.168.1.1022❌ Заблокировано (лимит)
12:00:40192.168.1.1022❌ Заблокировано
После 6 попыток подключения по SSH в минуту UFW автоматически блокирует IP-адрес на время. Это помогает защититься от автоматических атак.

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

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

Bash
sudo ufw status numbered

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

Bash
sudo ufw delete [номер_правила]

Перезагрузка UFW (например, после изменения конфигурации вручную):

Bash
sudo ufw reload

Полное отключение:

Bash
sudo ufw disable

Использование UFW с контейнерами и виртуализацией

Контейнерные технологии, такие как Docker, могут вмешиваться в работу брандмауэра, обходя UFW через собственные правила iptables. Чтобы сохранить безопасность:

  • Отключите вмешательство Docker в iptables:
JSON
// /etc/docker/daemon.json
{
  "iptables": false
}
  • Настройте проброс портов вручную через UFW.

💡 Совет: При использовании контейнеров, виртуальных машин и программных маршрутизаторов, комбинируйте UFW с изолированной сетевой архитектурой (например, bridge-сетями или VLAN).


Практические рекомендации в российском контексте

  • Для компаний и организаций:
    • Используйте UFW в составе схемы защиты, включающей VPN, IDS/IPS и двухфакторную аутентификацию.
    • UFW может использоваться совместно с решениями, сертифицированными ФСТЭК/ФСБ, в качестве первого уровня сетевой фильтрации.
  • Для облачных и VPS-серверов:
    • Всегда проверяйте правила UFW после перезапуска или миграции виртуальной машины.
    • Используйте ограничение доступа по IP и белые списки.
  • Импортозамещение и отечественные ОС:
    • UFW доступен во многих российских Linux-дистрибутивах (Альт, РЕД ОС, Astra и др.) и интегрируется в инфраструктуру на их базе.
Настроенный и активный брандмауэр: открыт только необходимый трафик.

Заключение

UFW — это простой, но мощный инструмент, позволяющий администратору или DevOps-специалисту быстро обеспечить базовую сетевую защиту. Он идеально подходит для большинства сценариев: от защиты серверов в ЦОДах до домашних шлюзов и облачных систем. В условиях растущих угроз и требований к информационной безопасности, особенно в России, UFW остаётся актуальным и востребованным решением.

💡Безопасный сервер — это не только брандмауэр, но и постоянное внимание администратора к логам, метрикам и обновлениям.

Was this helpful?

2 / 0

Добавить комментарий 0