Назад | Перейти на главную страницу

Сбросить правила firewalld по умолчанию?

В CentOS 7 я пробовал разные правила firewalld и команды iptables, и теперь хочу делать это повсюду, но только с использованием firewalld.

Вопрос

Как я могу сбросить все правила на значения по умолчанию, с которыми поставляется firewalld CentOS 7?

Вы можете просто удалить файлы, содержащие настроенные правила зоны, из /etc/firewalld/zones (или /usr/etc/firewalld/zones, в зависимости от распределения). После этого перезагрузите firewalld с участием firewall-cmd --complete-reload, и он должен начать использовать настройки по умолчанию. Когда вы вносите изменения в правила зоны, файлы снова появляются в этом каталоге.

Что касается iptables, вы можете сбросить все правила с помощью iptables -F. Перезагрузка тоже работает, если вы не реализовали какую-то постоянство. Остерегайтесь этого firewalld может быть настроен для использования iptables в качестве серверной части, что означает, что он будет добавлять или удалять iptables правила, в соответствии с тем, что вы указали в правилах его зоны.

Следующий фрагмент кода может быть вам полезен.

for srv in $(firewall-cmd --list-services);do firewall-cmd --remove-service=$srv; done firewall-cmd --add-service={ssh,dhcpv6-client} firewall-cmd --runtime-to-permanent

С Уважением,

Ахмер Мансур

Лично я бы просто удалил все службы и правила из всех зон, которые вы редактировали. За исключением SSH, если вы работаете на удаленном сервере. Это просто: sudo firewall-cmd --zone=WHATEVER --remove-service=WHATEVER

И после того, как все было удалено, просто sudo firewall-cmd --runtime-to-permanent

ОДНАКО: если вы не сохранили правила брандмауэра, просто перезапустите с systemctl restart firewalld

Не думаю, что в нем есть функция сброса.

Любое значение по умолчанию zones поставляемые с дистрибутивом, в случае изменения копируются в /etc/firewalld/zones каталог с этими изменениями.

Это также означает, что источник default файлы зоны не находятся в этом каталоге, и повторная установка не знает о файлах в этом каталоге (/etc/firewalld/zones) так что эти файлы будут untouched путем переустановки. Если эти файлы не будут удалены, firewalld продолжит загружать ваши модификации из этого каталога.

Вы можете сделать резервную копию и удалить все эти файлы (безопасно) из /etc/firewalld/zones и перезапустите firewalld, который затем вернется к настройкам зоны, установленной в дистрибутиве по умолчанию.

Это безопасно в том смысле, что конфигурации зоны распространения по умолчанию разрешают SSH по умолчанию. Однако, если вы вошли на этот сервер через порт SSH, отличный от порта 22, или любым другим способом, кроме SSH, вам нужно быть осторожным, удалив все эти файлы из /etc/firewalld/zones

sudo cp -pR /etc/firewalld/zones /etc/firewalld/zones.bak
sudo rm -f /etc/firewalld/zones/*
sudo systemctl restart firewalld

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

Установить yum-downloadonly плагин:

(RHEL5)
# yum install yum-downloadonly
(RHEL6, RHEL7)
# yum install yum-plugin-downloadonly

Перед использованием плагина проверьте /etc/yum/pluginconf.d/downloadonly.conf чтобы подтвердить, что этот плагин enabled=1

# yum install --downloadonly --downloaddir=/tmp firewalld
# rpm -ivh --force /tmp/firewalld*.rpm

Кстати yum reinstall firewalld не заменяет измененные файлы конфигурации.

Если вы действительно хотите удалить все, как сказал Джон Эшпул

rm -rf /etc/firewalld/zones или / usr / etc / firewalld / zone в зависимости от вашего дистрибутива

и

iptables -X
iptables -F
iptables -Z

плюс

systemctl restart firewalld

а потом у вас есть новый набор правил и зон;)