Содержание

FirewallD. Знакомство

FirewallD - новая служба для динамического управления межсетевым экраном с поддержкой доверенных зон сетевых соединений или интерфейсов.

Ввиду того, что FirewallD запускается как служба, новые правила можно добавлять без перезапуска, как это было с iptables, то есть без сброса установленного фаервола и установления соединений заново. Изменения в конфигурации могут быть сделаны в любое время, причем применяются мгновенно: сохранять или применять изменения не требуется. Служба FirewallD использует инструментарий iptables (iptables tool) для взаимодействия с фильтром пакетов ядра.

Сравнение

Рассмотрим основные отличия FirewallD и iptables:

Основное сходство: оба iptables и FirewallD используют одинаковый инструментарий iptables (iptables tool).

Отключаем FirewallD

Для тех, кому привычнее iptables, нежели чем FirewallD, его можно отключить и возобновить работу с iptables.

# systemctl disable firewalld
# systemctl stop firewalld
# yum install iptables-services
# touch /etc/sysconfig/iptables
# touch /etc/sysconfig/ip6tables
# systemctl start iptables
# systemctl start ip6tables
# systemctl enable iptables
# systemctl enable ip6tables

Если все же осталось желание разобраться с FirewallD, то проверим наличие необходимых пакетов, и если их нет, то произведем их установку.

yum -y install firewalld firewall-config

Концепция зон FirewallD

FirewallD использует сетевые зоны для определения уровня доверия сетевого соединения, соединение может являться частью только одной зоны, но одна зона может определять несколько сетевых подключений.

Для использования в общих случаях создано несколько предопределённых зон:

Конфигурация FirewallD

FirewallD может быть настроен через инструмент конфигурации firewall-config с графическим интерфейсом, через командную строку firewall-cmd или интерфейс D-BUS.

Доступ к инструмент конфигурации firewall-config с графическим интерфейсом осуществляется командой firewall-config или же запуском через меню.

После запуска будет виден список зон, о которых говорилось выше, можно выбрать любую из них и выполнить настройки.

На мой взгляд, наиболее удобным инструментом настройки остаётся командная строка и, соответственно, команда firewall-cmd.

Рассмотрим наиболее используемые команды:

КомандаЗначение
firewall-cmd –stateПоказать состояние FirewallD
firewall-cmd –reloadПерезагрузить FirewallD
firewall-cmd –get-zonesПоказать список всех заданных зон
firewall-cmd –get-servicesСписок всех поддерживаемых служб
firewall-cmd –get-active-zonesСписок всех активных зон
firewall-cmd [–zone=] –add-interface=Добавить интерфейс к зоне
firewall-cmd [–zone=] –change-interface=Изменить интерфейс у зоны
firewall-cmd [–zone=] –remove-interface=Удалить интерфейс из зоны
firewall-cmd –panic-onРежим паники, блокирующий все сетевые соединения
firewall-cmd –panic-offОтмена режима паники
firewall-cmd [–zone=] –add-service= [–timeout=]Добавить службу к зоне
firewall-cmd [–zone=] –remove-service= [–timeout=]Удалить службу из зоны
firewall-cmd [–zone=] –add-port=[-]/ [–timeout=]Добавить порт к зоне
firewall-cmd [–zone=] –remove-port=[-]/ [–timeout=]Удалить порт из зоны
firewall-cmd [–zone=] –add-masqueradeДобавить маскарадинг к зоне
firewall-cmd [–zone=] –remove-masqueradeУдалить маскарадинг

Добавить проброс портов к зоне

firewall-cmd [--zone=] --add-forward-port=port=[-]:proto= { :toport=[-] | :toaddr=| :toport=[-]:toaddr=}

Удалить проброс портов из зоны

firewall-cmd [--zone=] --remove-forward-port=port=[-]:proto= { :toport=[-] | :toaddr=| :toport=[-]:toaddr=}