TL;DR На новых установках сервера CentOS мне следует использовать firewalld или просто отключить его и вернуться к использованию /etc/sysconfig/iptables
?
firewalld и iptables служат схожим целям. Оба выполняют фильтрацию пакетов, но если я правильно понимаю, firewalld не очищает весь набор правил каждый раз, когда вносятся изменения.
Я много знаю о iptables, но очень мало о firewalld.
В Fedora и RHEL/CentOS - традиционная конфигурация iptables была сделана в /etc/sysconfig/iptables
. В firewalld его конфигурация находится в /etc/firewalld/
и представляет собой набор XML-файлов. Fedora, похоже, движется в сторону firewalld как замены этой устаревшей конфигурации. Я понимаю, что firewalld использует iptables под капотом, но у него также есть свой собственный интерфейс командной строки и формат файла конфигурации, как указано выше - это то, что я имею в виду с точки зрения использования одного против другого.
Есть ли конкретная конфигурация/сценарий, для которых каждый из них лучше всего подходит? В случае NetworkMangaer против сети, похоже, что хотя NetworkManager, возможно, и задумывался как замена для сетевых скриптов, из-за отсутствия поддержки сетевого моста и некоторых других вещей многие люди просто вообще не используют его в настройках сервера. Так что, похоже, существует общая концепция «используйте NetworkManager, если вы работаете в Linux desktop/gui
, и сеть, если вы работаете на сервере». Это только то, что я вынес из чтения различных постов — но это, по крайней мере, дает руководство относительно того, как можно использовать эти вещи — по крайней мере, в их текущем состоянии.
Но я делал то же самое с firewalld и просто отключал его и использовал вместо него iptables. (Я почти всегда устанавливаю Linux на сервер, а не для использования на рабочем столе). Является ли firewalld эффективной заменой iptables и должен ли я использовать его на всех новых системах?
решение1
Поскольку firewalld
основан на конфигурации XML, некоторые могут подумать, что проще настроить брандмауэр программным способом. Этого можно добиться iptables
точно так же, но другим способом, который не является XML. Если вы уже знакомы с тем, как iptables
работает, зачем вам переносить всю свою конфигурацию в firewalld
?
Если вы рассматриваете свой самый большой iptables
набор правил брандмауэра, как часто вы думаете, что вы выиграете от динамического аспекта firewalld
? В большинстве случаев производительность iptables
никогда не является проблемой. В большинстве случаев, когда производительность iptables
является проблемой, ее можно исправить с помощью ipset
базовых наборов IP-адресов источника/назначения.
Другой вопрос, стоит ли использовать NetworkManager.