Правила брандмауэра iptables и UFW
Пишите правила брандмауэра для разрешения, запрета и журналирования трафика с помощью iptables и более простого интерфейса UFW
«Правила брандмауэра iptables и UFW» — бесплатный урок Cyber Security Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cyber Security Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cyber Security Academy содержит 4 уроков всего.
Обзор брандмауэров Linux
Linux фильтрует сетевой трафик с помощью ядерной платформы netfilter. iptables — традиционный инструмент пользовательского пространства, а nftables — его современная замена. UFW (Uncomplicated Firewall) — упрощённый интерфейс для iptables, подходящий для серверов Ubuntu/Debian.
Цепочки iptables
iptables использует цепочки для обработки пакетов:
- INPUT — пакеты, предназначенные для локального компьютера
- OUTPUT — пакеты, отправляемые локальным компьютером
- FORWARD — пакеты, маршрутизируемые через компьютер
Правила в каждой цепочке проверяются сверху вниз; срабатывает первое совпадение.
Политики iptables по умолчанию
Политика по умолчанию применяется, если ни одно правило не совпало. Безопасная политика по умолчанию:
# Default deny all, allow established connections
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPTРаспространённые правила iptables
Основные разрешающие правила:
# Allow SSH
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Allow HTTP/HTTPS
iptables -A INPUT -p tcp -m multiport --dports 80,443 -j ACCEPT
# Allow from specific IP
iptables -A INPUT -s 10.0.0.5 -j ACCEPT
# List rules
iptables -L -n -v --line-numbersСохранение правил iptables
Правила iptables по умолчанию не сохраняются и сбрасываются после перезагрузки:
# Debian/Ubuntu:
aptitude install iptables-persistent
netfilter-persistent save
# RHEL/CentOS:
service iptables saveОсновы UFW
UFW упрощает управление брандмауэром в Ubuntu. Распространённый порядок действий:
ufw default deny incoming
ufw default allow outgoing
ufw allow ssh
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
ufw status verboseПрофили приложений UFW
UFW поддерживает именованные профили, которые открывают необходимые для приложений порты:
ufw app list
ufw allow "Nginx Full" # opens 80 and 443
ufw allow "OpenSSH"
ufw app info "Nginx Full"Ограничение частоты подключений в UFW
UFW может ограничивать частоту подключений для предотвращения атак перебором паролей:
# Allow SSH but rate-limit (max 6 connections per 30 seconds per IP)
ufw limit ssh
# This triggers after 6 connection attempts in 30 secondsЖурналирование событий брандмауэра
Включите журналирование, чтобы проводить аудит заблокированного трафика:
ufw logging on
ufw logging medium
# Logs appear in /var/log/ufw.log
tail -f /var/log/ufw.log | grep BLOCKnftables: современная альтернатива
nftables заменяет iptables в современных дистрибутивах Linux. Он использует более понятный синтаксис и обеспечивает лучшую производительность при работе со сложными наборами правил:
nft list ruleset
nft add rule inet filter input tcp dport 22 accept
nft add rule inet filter input dropБрандмауэры с отслеживанием состояния и без него
Брандмауэры с отслеживанием состояния отслеживают состояние соединений (NEW, ESTABLISHED, RELATED) и автоматически разрешают ответы на исходящие соединения. Брандмауэры без отслеживания состояния сопоставляют каждое соединение независимо, поэтому для обоих направлений требуются явные правила. В Linux netfilter отслеживает состояние соединений с помощью модуля conntrack.
Быстрая проверка: правила брандмауэра
Какая команда UFW устанавливает политику по умолчанию, блокирующую все входящие соединения, если они явно не разрешены?
Итоги урока
iptables и современный nftables управляют фильтрацией пакетов Linux с помощью цепочек INPUT/OUTPUT/FORWARD. UFW упрощает этот процесс благодаря именованным профилям, ограничению частоты подключений и журналированию. Политика по умолчанию должна быть deny incoming. Всегда разрешайте установленные соединения и локальный интерфейс. Сохраняйте правила, чтобы они переживали перезагрузку.
Часто задаваемые вопросы
Урок «Правила брандмауэра iptables и UFW» бесплатный?
Да — полный текст урока «Правила брандмауэра iptables и UFW» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cyber Security Academy, подпишись на CoddyKit PRO. Курс Cyber Security Academy содержит 4 уроков всего.
Чему я научусь в уроке «Правила брандмауэра iptables и UFW»?
Пишите правила брандмауэра для разрешения, запрета и журналирования трафика с помощью iptables и более простого интерфейса UFW Ты практикуешь Cyber Security Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Cyber Security Academy?
Предыдущий опыт не требуется. Cyber Security Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Правила брандмауэра iptables и UFW»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Cyber Security Academy?
Да. Каждый урок Cyber Security Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Разрешения и владельцы файлов
- Управление пользователями и группами
- Защита SSH и аутентификация по ключу
- Правила брандмауэра iptables и UFW