Введение
В этом лабораторном занятии вы узнаете, как проверить, активна ли сетевая зона брандмауэра в Linux с использованием firewalld. Мы начнем с использования команды firewall-cmd --get-active-zones для определения текущих активных зон и сетевых интерфейсов, с которыми они связаны.
После этого мы рассмотрим конфигурационные файлы firewalld, расположенные в каталоге /etc/firewalld, чтобы понять, где определяются правила зон. Наконец, мы проверим базовые правила iptables, чтобы увидеть, как firewalld преобразует конфигурации своих зон в реальные правила фильтрации пакетов. Это лабораторное занятие дает основательное понимание того, как firewalld управляет сетевой безопасностью на вашей системе Linux.
Проверка зон с помощью firewall-cmd --get-active-zones
На этом шаге мы начнем изучать firewalld — динамический инструмент управления брандмауэром в Linux. Брандмауэры являются важными компонентами сетевой безопасности, контролируя, какой трафик может входить и выходить из вашей системы.
firewalld использует концепцию "зон" для управления правилами брандмауэра. Зоны определяют уровень доверия для сетевых соединений. Разные зоны имеют разные правила по умолчанию. Например, зона "public" (публичная) может иметь более строгие правила, чем зона "trusted" (доверенная).
Давайте проверим, какие зоны в настоящее время активны на вашей системе. Мы будем использовать команду firewall-cmd с опцией --get-active-zones.
Откройте терминал, если он еще не открыт. Помните, что вы можете найти значок Xfce Terminal слева на рабочем столе.
Введите следующую команду и нажмите Enter:
firewall-cmd --get-active-zones
Вы должны увидеть вывод, похожий на следующий:
public
interfaces: eth0
Этот вывод сообщает нам, что в настоящее время активна зона public, и она связана с сетевым интерфейсом eth0. Интерфейс eth0 используется вашей виртуальной машиной для подключения к сети.
Понимание активных зон является первым шагом в управлении брандмауэром с помощью firewalld. На следующих шагах мы рассмотрим конфигурационные файлы и то, как применяются правила.
Нажмите Продолжить, чтобы перейти к следующему шагу.
Проверка конфигурации firewalld с помощью cat /etc/firewalld
На предыдущем шаге мы узнали, какие зоны firewalld активны. Теперь давайте посмотрим, где firewalld хранит свои конфигурационные файлы. Эти файлы определяют правила для каждой зоны.
Основной каталог конфигурации для firewalld - это /etc/firewalld. Внутри этого каталога вы найдете подкаталоги для зон, служб и других элементов конфигурации.
Мы можем использовать команду cat для просмотра содержимого файлов. Чтобы посмотреть, что находится внутри каталога /etc/firewalld, мы можем попробовать использовать cat для него, но cat предназначен для файлов, а не для каталогов. Вместо этого давайте выведем список содержимого каталога с помощью команды ls.
Введите следующую команду и нажмите Enter:
ls /etc/firewalld/
Вы должны увидеть список каталогов и файлов, что-то вроде этого:
icmptypes lockdown-whitelist.xml modules panic-iface.conf services zones
Это показывает структуру конфигурации firewalld. Каталог zones особенно важен, так как он содержит конфигурационные файлы для каждой зоны (например, public.xml, trusted.xml и т.д.).
Давайте посмотрим внутри каталога zones. Введите:
ls /etc/firewalld/zones/
Вы увидите список XML-файлов, по одному для каждой предопределенной зоны:
block.xml dmz.xml drop.xml external.xml home.xml internal.xml public.xml trusted.xml work.xml
Эти XML-файлы содержат конкретные правила для каждой зоны. Например, public.xml определяет правила для зоны public, которую мы увидели как активную на предыдущем шаге.
Хотя в этом лабораторном занятии мы не будем углубляться в детали XML-файлов, знание того, где хранится конфигурация, является важной частью понимания firewalld.
Нажмите Продолжить, чтобы перейти к следующему шагу.
Проверка правил iptables с помощью iptables -L
Хотя firewalld является современным способом управления брандмауэрами на многих дистрибутивах Linux, он часто работает путем настройки нижележающей платформы netfilter, которая традиционно управляется командой iptables.
Даже при использовании firewalld вы все еще можете просмотреть правила, созданные firewalld в netfilter, с помощью команды iptables. Это может помочь понять, как firewalld преобразует свои правила, основанные на зонах, в более низкоуровневые правила iptables.
Чтобы вывести список текущих правил iptables, мы будем использовать команду iptables с опцией -L. Поскольку просмотр правил брандмауэра требует административных привилегий, нам нужно будет использовать sudo.
Введите следующую команду и нажмите Enter:
sudo iptables -L
Вы увидите большой объем вывода! Этот вывод показывает различные цепочки iptables (например, INPUT, FORWARD, OUTPUT) и правила в них. firewalld создает свои собственные цепочки, часто с префиксом FWD, IN_, OUT_ и т.д., для управления трафиком на основе зон и служб.
Вот пример того, что вы можете увидеть (точный вывод может отличаться):
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
ACCEPT all -- anywhere anywhere
INPUT_direct all -- anywhere anywhere
INPUT_ZONES_SOURCE all -- anywhere anywhere
INPUT_ZONES all -- anywhere anywhere
...
Chain FORWARD (policy ACCEPT)
target prot opt source destination
...
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
...
Chain INPUT_ZONES (1 references)
target prot opt source destination
FWD_public all -- anywhere anywhere [goto] /* zone public */
...
Не беспокойтесь о том, чтобы сразу понять каждую строку этого вывода. Основная идея заключается в том, что firewalld активно управляет этими правилами iptables в фоновом режиме. Команда iptables -L позволяет вам увидеть фактические правила фильтрации пакетов, применяемые ядром.
Этот шаг завершает наше краткое введение в firewalld и его связь с iptables. Вы узнали, как проверять активные зоны, находить конфигурационные файлы и просматривать нижележащие правила iptables.
Нажмите Продолжить, чтобы завершить лабораторную работу.
Резюме
В этом лабораторном занятии мы начали изучать firewalld для проверки активных зон сетевого брандмауэра в Linux. Мы узнали, что firewalld использует зоны для управления правилами брандмауэра и что команда firewall-cmd --get-active-zones используется для определения, какие зоны в настоящее время активны и связаны с сетевыми интерфейсами. Мы рассмотрели пример, когда зона public была активна на интерфейсе eth0.
Затем мы начали изучать конфигурационные файлы firewalld, отметив, что основной каталог конфигурации - это /etc/firewalld. Мы попытались просмотреть содержимое каталога, понимая, что cat используется для файлов, а не для каталогов, и что вывод списка содержимого каталога является подходящим методом для просмотра конфигурационных файлов для зон, служб и других элементов.



