Межсетевой экран (фаервол, брандмауэр) — это фундаментальный компонент безопасности любой системы, подключённой к сети. В Linux существует несколько мощных и гибких решений для фильтрации сетевого трафика, от классических инструментов командной строки до удобных графических утилит. В этой статье мы подробно разберём установку и настройку самых популярных межсетевых экранов в разных дистрибутивах Linux: iptables, nftables, UFW (Uncomplicated Firewall) и firewalld.
Почему фаервол в Linux необходим?
Даже если у вас домашний ПК, межсетевой экран выполняет критически важные функции:
-
Блокировка нежелательных входящих соединений, защищая от сканирования портов и попыток эксплуатации уязвимостей.
-
Контроль исходящего трафика, предотвращая утечку данных или соединение вредоносного ПО с командным сервером.
-
Первая линия обороны в многоуровневой стратегии безопасности.
Выбор фаервола: что и когда использовать
| Фаервол | Сложность | Управление | Идеальный случай использования |
|---|---|---|---|
| iptables | Высокая | CLI (терминал), низкоуровневые правила | Старые системы, скрипты автоматизации, тонкая настройка. |
| nftables | Средняя/Высокая | CLI (терминал), замена iptables | Современные системы (ядро 3.13+), более чистый синтаксис. |
| UFW | Низкая | CLI и GUI (GUFW), абстракция над iptables | Десктопы Ubuntu/Debian, быстрая и простая настройка. |
| firewalld | Средняя | CLI (firewall-cmd) и GUI, зоны | Серверы и рабочие станции RHEL/Fedora/CentOS, динамическое управление. |
Часть 1: iptables — классический инструмент
iptables — это стандартный, мощный, но сложный для новичков инструмент, работающий напрямую с ядром.
Установка iptables (если не установлен)
Основные команды и пример конфигурации
Правила iptables состоят из цепочек (INPUT, OUTPUT, FORWARD), политик (ACCEPT, DROP) и самих правил.
Пример базового набора правил для защиты рабочей станции:
Сохранение правил iptables
Правила, заданные через команды, сбрасываются после перезагрузки. Для сохранения:
-
Ubuntu/Debian с
iptables-persistent:sudo netfilter-persistent save -
Fedora/RHEL:
sudo service iptables saveилиsudo /sbin/iptables-save > /etc/sysconfig/iptables -
Arch Linux: Используйте пакет
iptables-saveи сервисiptables.service.

Часть 2: nftables — современная замена iptables
nftables — это новый фреймворк, призванный заменить iptables. Он предлагает более простой синтаксис, лучшую производительность и объединяет функционал iptables, ip6tables, arptables и ebtables.
Установка nftables
Пример конфигурации nftables
Конфигурация хранится в /etc/nftables.conf. Пример простого набора правил:
Применить конфигурацию: sudo nft -f /etc/nftables.conf. Включить автозагрузку: sudo systemctl enable --now nftables.
Часть 3: UFW (Uncomplicated Firewall) — простота для Ubuntu
UFW — это фронтенд для iptables, созданный для максимального упрощения настройки. Идеален для десктопов.
Установка UFW
Базовые команды UFW

Часть 4: firewalld — гибкий фаервол для RHEL/Fedora
firewalld использует концепцию зон и сервисов, что удобно для систем с изменяющимся сетевым окружением (ноутбуки).
Установка firewalld
Запуск: sudo systemctl enable --now firewalld
Основные команды firewalld (firewall-cmd)

Сравнительная таблица команд для типовых задач
| Задача | iptables | nftables | UFW | firewalld |
|---|---|---|---|---|
| Разрешить SSH | -A INPUT -p tcp —dport 22 -j ACCEPT | tcp dport ssh accept | sudo ufw allow ssh | —add-service=ssh |
| Разрешить HTTP/HTTPS | —dport 80 -j ACCEPT | tcp dport {http, https} accept | sudo ufw allow http | —add-service={http,https} |
| Запретить порт | -A INPUT -p tcp —dport 21 -j DROP | tcp dport 21 drop | sudo ufw deny 21 | —remove-port=21/tcp |
| Разрешить по IP | -s 192.168.1.100 -j ACCEPT | ip saddr 192.168.1.100 accept | sudo ufw allow from 192.168.1.100 | —add-rich-rule=’rule source ip…’ |
| Просмотр правил | sudo iptables -L -v -n | sudo nft list ruleset | sudo ufw status verbose | sudo firewall-cmd —list-all |
Заключение: рекомендации по выбору и использованию
-
Для новичков на Ubuntu/Debian: Используйте UFW. Он прост, интуитивен и полностью покрывает потребности десктопа.
-
Для серверов RHEL/Fedora/CentOS: Используйте firewalld. Концепция зон и интеграция с системой идеальна для серверных ролей.
-
Для сценариев автоматизации и тонкого контроля: Изучите iptables или современный nftables. Они дают полный контроль над сетевым трафиком.
-
Общее правило: Всегда начинайте с политики «запретить всё, разрешить необходимое». Минимизируйте количество открытых портов. Регулярно проверяйте логи (journalctl -u ufw или /var/log/ufw.log для UFW) на предмет подозрительных попыток подключения.
Настройка и поддержка межсетевого экрана — это не разовое действие, а важная часть рутины системного администратора. Выбрав подходящий инструмент под вашу задачу и дистрибутив, вы значительно повысите уровень безопасности вашей системы.
