LINUX.ORG.RU
ФорумAdmin

CentOS 7 Firewalld - почему такая боль?

 , , ,


0

1

Добрый день.

производил обновление системы на домашнем сервере. перешел на 7ую версию, решил все делать как надо, а не как умею и помню.

интерфейсы создал через systemd-networkd, днс-служба через systemd-resolved.

теперь дошла очередь дошла до firewalld. Создал зоны - idnet, localnet, ovpn, beeline, wifi. разместил интерфейсы в каждой зоне. вроде все хорошо.

теперь пытаюсь сделать из сервер шлюз. не работает.

у кого есть понимание того, как надо правильно готовить firewalld??

★★★

Последнее исправление: cetjs2 (всего исправлений: 1)

Ответ на: комментарий от grossws

В случае Mikrotik'а только tcp.

Не так важно, откуда они берут порты, но если сервис назван так же, как в /etc/services, логично ожидать, что и порты будет те же. Вот они спокойно назвали сервисом samba порты netbios-*, и это нормально. А вот в случае с openvpn, сегодня только udp, а завтра кто-то пожалуется в багтрекер и всем с обновлением прилетит, что openvpn это и tcp и udp.

Что мешало сделать сразу нормально, допустим openvpn-udp и openvpn-tcp?

Что-то не работает в варианте «из коробки» — идёте в багтрекер.

При таком подходе, багтрекер превращается в фича-трекер (feature request), а обновляющие систему должны будут смотреть, наоткрывали ли новых портов в описании старых сервисов?

Вот, упомянутый ранее в этом топике plexmediaserver, накой нужно открывать в public порты 1900 и 5353, чего там обнаруживать (discovery). И зачем завязывать эти порты, которые, в принципе, отдельные службы (ssdp == Simple Service Discovery Protocol и mdns) на видеосервер?

mky ★★★★★
()
Ответ на: комментарий от grossws

Какая разница оттуда они притащили информацию для написания конкретного xml? Хотят — берут порты из педивикии, хотят — с официального сайта, хотят — из IANA registry. Что-то не работает в варианте «из коробки» — идёте в багтрекер.

Вот и «договорились». Зашибись вариант. 1. У меня не работает. 2. Напиши в багтрекер. 3. Дождись пока починят/или-пошлют.
И зачем такое «удобно»? При учете полностью и давно рабочего инструмента.
Вам вот своего времени не жалко? Мне лично жалко.

anc ★★★★★
()
Ответ на: комментарий от anc

Мне не жалко написать xml в 4 строки и залить его ansible'ом на нужные сервера. А если нужно, чтобы поменялись умолчанию — написать в багтрекер и приложить те же 4 строки.

grossws
()
Ответ на: комментарий от grossws

А если нужно, чтобы поменялись умолчанию — написать в багтрекер и приложить те же 4 строки.

И «3. Дождись пока починят/или-пошлют. » или еще чего сломают. Т.е. все это время будем сидеть на «попе» и ждать... «Удобно», что еще сказать.
Повторю, старая система полностью рабочая. Пока в этой теме я не увидел реальных доказательств удобства fwd. А вот от защитников его уже увидел много «неудовств» которые могут возникнуть. «неудобства» в такой критичной системе как fw приводят к очень большой «попоболе».

anc ★★★★★
()
Ответ на: комментарий от anc

Вас заставляют использовать его? iptables отобрали или что? Делайте на ваших серверах, как вам удобно. Нравится — используйте iptables напрямую, нравится — используйте довольно легковесные конфиги и удобство интеграции, когда правила фаерволла могут меняться динамически в зависимости от того, какие процессы что требуют.

Если у вас фаерволл настраивается один раз и не меняется — делайте как вам удобно. Если конфигурация меняется, есть несколько зон и т. п. мне лично удобнее использовать fwd, а не костылить с прибитой гвоздями хрупкой последовательностью запуска сервисов, которые сами дёргают ipt (fail2ban без использования модуля для fwd, libvirtd, docker, всякие кластерые оверлейные сети и т. п.)

grossws
()
Ответ на: комментарий от Nurmukh

но я хочу освоить rightway

Генератор с не очень предсказуемым результатом, явно не может быть верным путем. Удобство использовать iptables на прямую, это прежде всего уверенность в том, что произойдет ровно, то что ты написал. А пользоваться всеми этими «удобными» генераторами правил удобно только, тем кто занимается их разработкой, потому-что только они знают тонкости генерации правил. Плюс опять же в случае с такого рода утилитами, ты еще и зависишь от маинтейнера. А если ты пользователь фанатик, то скорей всего, чтобы этим пользоваться тебе еще придется читать release notes, знать и т.д.
Ну если тебе нужно реально знать, что происходит сгенерированные правила, тебе еще потом все равно придется читать. Короче говоря, такого рода утилиты облегчают жизнь, только тем кто не знаком с iptables, обычно. Потому-что тебе почти всегда будет удобней написать самому, чем доверять генератору. Генераторы полезны, там где нужно делать много однообразных действий, вот только в случае с iptables никто тебе не запрещает скопировать уже готовое правило, и повторить его N раз для каких-то других условий с минимальным редактированием. Ну и самая главная киллер фича, просто использования iptables, в том, что правила скорей всего уже были написаны. И если хочешь сделать православно, то тебе просто нужно правила в которых можно потеряться сразу с комментариями писать, прямо в самом правиле.

anonymous_sama ★★★★★
()
Последнее исправление: anonymous_sama (всего исправлений: 1)
Ответ на: комментарий от mky

Что мешало сделать сразу нормально, допустим openvpn-udp и openvpn-tcp?

firewall-cmd --add-port=1194/tcp --zone=external, firewall-cmd --add-port=1194/udp --zone=external
Можешь не благодарить.

Встречный вопрос, если такое будет, как firewalld от этого защитит?

anc, у вас таки федога или yum update -y в кгонтаб?

А у меня нет пакетов которые рулят fw.

Что мешает злоумышелннику добавить в %install вызов iptables -A… на машине мейнтейнера того же less? Не может быть? Скажите об этом космонафту.

И в данном случае вы «передергиваете» fwd рулит правилами, значит проверять все-таки надо, даже вы признали что он еще «не готов».

Так и iptables рулит правилами. Проверять обоих нужно. А если нет разницы, зачем писать больше? У fwd требования к «готов» выше.

Мне действительно интересно с nftables он будет работать или такого даже в планах пока нет?

http://www.firewalld.org/uploads/2015/06/nfws2015-firewalld.pdf

Увеличение кол-ва правил таки снижает производительность.

Хватит держать шлюзы на RPi

Direct и так перманентный есть

grossws, есть, но федоравики говорит «This feature is in early state». Страшновато надеяться на то, про что в федоре говорят «только начали».

mogwai ★★★★
()
Ответ на: комментарий от mogwai

есть, но федоравики говорит «This feature is in early state». Страшновато надеяться на то, про что в федоре говорят «только начали».

В centos/rhel уже занесли. Да и мне казалось, что эта надпись там давно висит, года с 13-14 как минимум.

grossws
()
Ответ на: комментарий от mogwai
-bash: firewall-cmd: command not found

Даже не было мысли благодарить, с учётом того, что ″--add-port″ как-то разрушает магию ″--add-service″.

mky ★★★★★
()
Ответ на: комментарий от mogwai

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

В iptables ведь не просто так добавили ″-m comment″, чтобы потом, глядя на --dport 23456, не было воспоминаний, что означают эти цифры. Вроде как, firewalld ввёл описание сервисов, создавай свои и пиши что нужно, а тут тебе на ″--add-port″, чтобы опять можно было наоткрывать портов и забыть зачем.

mky ★★★★★
()
Ответ на: комментарий от mky

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

Nurmukh ★★★
() автор топика
Ответ на: комментарий от Nurmukh

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

Порадовали :))) Лучший ответ про «нужность» fwd

anc ★★★★★
()
Ответ на: комментарий от mky

fwd конфиг в xml хранит. Напиши комментарий в конфиг, что мешает? Или напиши service.xml, потом сделай add-service.
Кто-то выше ныл, что функционала мало в fwd. Теперь будешь ныть, что его много?

mogwai ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.