Поиск по сайту:

Полезные правила FirewallD для настройки и управления брандмауэром в Linux


Firewalld предоставляет возможность настройки динамических правил брандмауэра в Linux, которые можно применять мгновенно, без необходимости перезапуска брандмауэра, а также поддерживает концепции D-BUS и зон, что упрощает настройку.

Firewalld заменил старый механизм брандмауэра Fedora (Fedora 18 и более поздних версий), RHEL/CentOS 7 и другие новейшие дистрибутивы полагаются на него. этот новый механизм. Одним из главных мотивов внедрения новой системы брандмауэра является то, что старый брандмауэр требует перезапуска после внесения каждого изменения, что приводит к разрыву всех активных соединений. Как было сказано выше, последняя версия firewalld поддерживает динамические зоны, что полезно при настройке различного набора зон и правил для вашей офисной или домашней сети через командную строку или с использованием метода графического интерфейса.

На первый взгляд концепция firewalld кажется очень сложной в настройке, но службы и зоны упрощают эту задачу, если объединить их вместе, как описано в этой статье.

В нашей предыдущей статье, где мы видели, как играть с firewalld и его зонами, теперь здесь, в этой статье, мы увидим некоторые полезные правила firewalld для настройки ваших текущих систем Linux с помощью командной строки.

  1. Конфигурация Firewalld в RHEL/CentOS 7

Все примеры, рассмотренные в этой статье, практически протестированы на дистрибутиве CentOS 7, а также работают на дистрибутивах RHEL и Fedora.

Прежде чем внедрять правила firewalld, обязательно сначала проверьте, включена ли и работает ли служба firewalld.

systemctl status firewalld

На рисунке выше видно, что firewalld активен и работает. Теперь пришло время проверить все активные зоны и активные услуги.

firewall-cmd --get-active-zones
firewall-cmd --get-services

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

yum install firewalld firewall-config

Как было сказано выше, эта статья специально написана для любителей командной строки, и все примеры, которые мы собираемся рассмотреть, основаны только на командной строке, без графического интерфейса… извините…..

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

firewall-cmd --zone=public --list-all

На изображении выше пока не добавлено ни одного активного правила, давайте посмотрим, как добавлять, удалять и изменять правила в оставшейся части этой статьи….

1. Добавление и удаление портов в Firewalld

Чтобы открыть любой порт для общедоступной зоны, используйте следующую команду. Например, следующая команда откроет порт 80 для общедоступной зоны.

firewall-cmd --permanent --zone=public --add-port=80/tcp

Аналогичным образом, чтобы удалить добавленный порт, просто используйте опцию «-remove» с командой firewalld, как показано ниже.

firewall-cmd --zone=public --remove-port=80/tcp

После добавления или удаления определенных портов обязательно подтвердите, добавлен или удален порт, используя параметр «–list-ports».

firewall-cmd --zone=public --list-ports

2. Добавление и удаление служб в Firewalld

По умолчанию firewalld поставляется с предопределенными службами. Если вы хотите добавить список конкретных служб, вам необходимо создать новый XML-файл со всеми службами, включенными в файл, или же вы также можете определить или удалить каждую службу вручную, выполнив следующую команду: команды.

Например, следующие команды помогут вам добавить или удалить определенные службы, как мы это сделали для FTP в этом примере.

firewall-cmd --zone=public --add-service=ftp
firewall-cmd --zone=public --remove-service=ftp
firewall-cmd --zone=public --list-services

3. Блокировать входящие и исходящие пакеты (режим паники)

Если вы хотите заблокировать любые входящие или исходящие соединения, вам необходимо использовать режим «паника», чтобы заблокировать такие запросы. Например, следующее правило приведет к удалению любого существующего установленного соединения в системе.

firewall-cmd --panic-on

После включения режима паники попробуйте выполнить проверку связи с любым доменом (скажем, google.com) и проверьте, включен ли режим паники ВКЛ, используя '–query-panic. >», как указано ниже.

ping google.com -c 1
firewall-cmd --query-panic

Видите ли вы, что на картинке выше в панике говорится «Неизвестный хост google.com». Теперь попробуйте отключить режим паники и потом еще раз пропинговать и проверить.

firewall-cmd --query-panic
firewall-cmd --panic-off
ping google.com -c 1

На этот раз будет пинг-запрос от google.com.