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

Fedora 21: Firewalld (firewall-cmd) не будет ПОСТОЯННО назначать интерфейсы зонам?

Я установил Fedora на этот компьютер, который ИСКЛЮЧИТЕЛЬНО является системой шлюза / межсетевого экрана.

После установки я запустил 'yum upgrade', и поэтому он должен быть до самой последней версии Fedora 21 - я специально немного отстал (не Fedora 22) специально, чтобы любые проблемы, надеюсь, были исправлены (и теперь понимаю, МОЖЕТ ли я перейти на Fedora 20 ?! ) ...

Как только я его поднял, я настроил два сетевых адаптера в коробке с соответствующими IP-адресами, перезагрузился, подтвердил, что все в порядке, и начал настройку «брандмауэра». Сначала я запустил:

# firewall-cmd --list-all-zones

Я подтвердил, что имена интерфейсов, которые использует firewalld, соответствуют другим инструментам (в отличие от прошлых версий Fedora, таких как 19 - см. Запрошена справка по отладке FC19 FirewallD: порты не пересылаются )

Чтобы разместить интерфейсы в правильных зонах, я запустил:

firewall-cmd --permanent --zone=external --change-interface=enp2s0
firewall-cmd --permanent --zone=internal --change-interface=enp5s4

..и продолжил попытки настроить переадресацию портов и т. д. Есть несколько шагов, таких как открытие порта, а затем его пересылка. Однако НИЧЕГО из этого не сработало. После некоторого покопания я нашел эту статью, датированную всего несколько дней назад, поэтому я решил, что она очень актуальна - http://www.certdepot.net/rhel7-get-started-firewalld/ - и последовал его совету редактировать /etc/sysctl.conf и добавить чтение строки net.ipv4.ip_forward=1 и активируйте его с помощью # sysctl -pоднако, к сожалению, все пошло "вспять" ...

Раньше попытки подключения к перенаправленному порту зависали, но теперь они возвращались:

ssh: connect to host 167.101.97.2 port 6543: No route to host

Итак, я попытался вернуть все в нормальное состояние, НЕ ВЫПОЛНЯЯ переадресацию портов и исправив sysctl.conf, но все НЕ вернулось к "исходному"!

Невероятно, но я перезагрузился, все было настроено обратно к значениям по умолчанию, просто установил состояние, насколько мог - за исключением тех изменений зоны; какой вред могли ОНИ сделать ?! Но когда система снова заработала, ИНТЕРФЕЙСЫ вернулись в зону по умолчанию!

Затем я попробовал все заново. Нет! После перезагрузки интерфейсы ОСТАЮТСЯ В ЗОНЕ "FedoraServer". НЕ ВАЖНО, ЧТО Я ДЕЛАЮ. Я пробовал --permanent в нескольких разных позициях в командной строке. Каждый раз ответ - «успех», и все же каждый раз в результате он не выдерживает перезагрузки, даже если это ЕДИНСТВЕННОЕ действие, выполняемое в системе между перезагрузками.

... Этого достаточно, чтобы поколебать лояльность человека к своему (иначе) любимому дистрибутиву Linux! ... Не позволяй мне говорить тебе, что я действительно считать!

ОК, ОБЯЗАТЕЛЬНО это было проверено; как это сделано? (ДА, я хотел бы знать о переадресации портов, но здесь я спрашиваю ТОЛЬКО об изменении зоны для интерфейсов, переживших перезагрузку.)

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:

Итак, у меня возникла идея, что МОЖЕТ БЫТЬ на пути мешает NetworkManager, как это часто случалось в прошлом. Однако ни одна из моих попыток там не увенчалась успехом. Первым делом было просто установить NM_CONTROLLED = "no" в файлах интерфейсов в /etc/sysconfig/network-scripts но это оставило систему без интерфейсов!

Затем мне пришлось вернуться в свое прошлое и вспомнить, что раньше был "network.service", и, к счастью, он уже был установлен. Итак, я побежал:

systemctl disable NetworkManager.service
systemctl enable network.service

И интерфейсы тогда были доступны. Однако после перезагрузки - И обеспечение необходимого firewall-cmd команды были выполнены (см. выше) - к сожалению, снова не сработало.

Затем я попытался изменить значения NM_CONTROLLED на «нет», но это тоже не сработало.

Я не уверен, что команда firewalld делает это, но вы можете изменить зону в файлах ifcfg в /etc/sysconfig/network-scripts - редактировать ifcfg-enp2s0 и ifcfg-enp5s4 и добавить ZONE=external и ZONE=internalсоответственно.

Другое решение в этом посте: Не удается сохранить интерфейсы в назначенных зонах, Centos 7

Протестировано в моей среде и работает правильно