Чего-то я недопонимаю в firewalld (проброс портов)

Cent OS, Scientific Linux

Модераторы: broom, Модераторы разделов

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 15764
Статус: grammatikführer
ОС: Debian GNU/Linux

Чего-то я недопонимаю в firewalld

Сообщение Bizdelnick » 26.05.2016 13:55

Во всех мануалах по firewalld пишут, что для проброса портов надо сделать firewall-cmd [--zone=<zone>] --add-forward-port=port=<port>[-<port>]:proto=<protocol> { :toport=<port>[-<port>] | :toaddr=<address> | :toport=<port>[-<port>]:toaddr=<address> }. Круто. Сделано: port=22058:proto=tcp:toport=22:toaddr=192.168.122.58. Не работает. В iptables-save есть среди прочего такое:

Код: Выделить всё

-A PRE_public_allow -p tcp -m tcp --dport 22058 -j MARK --set-xmark 0x86/0xffffffff
-A PRE_public_allow -p tcp -m mark --mark 0x86 -j DNAT --to-destination 192.168.122.58:22
-A PRE_public_allow -p tcp -m tcp --dport 22058 -j MARK --set-xmark 0x86/0xffffffff
-A FWDI_public_allow -m conntrack --ctstate NEW -m mark --mark 0x86 -j ACCEPT
А SNAT в обратную сторону кто добавлять должен?
CentOS 7
Пишите правильно:
в консоли
вкупе (с чем-либо)
в общем
вообще
в течение (часа)
команда
новичок
нюанс
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 15764
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: Чего-то я недопонимаю в firewalld

Сообщение Bizdelnick » 26.05.2016 14:34

Впрочем, проблема даже не в этом. Как показал tcpdump, до назначения и входящие пакеты не добираются, хотя казалось бы...
Пишите правильно:
в консоли
вкупе (с чем-либо)
в общем
вообще
в течение (часа)
команда
новичок
нюанс
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 15764
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: Чего-то я недопонимаю в firewalld

Сообщение Bizdelnick » 26.05.2016 14:41

Беру свои слова обратно, виновником оказался не firewalld, а libvirt, добавляющий такие правила:

Код: Выделить всё

-A FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable

Костыль для обхода есть тут: http://wiki.libvirt.org/page/Networking#Fo...ing_Connections
Пишите правильно:
в консоли
вкупе (с чем-либо)
в общем
вообще
в течение (часа)
команда
новичок
нюанс
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

Аватара пользователя
Olej
Сообщения: 659
ОС: Fedora, Mint, Debian, QNX

Re: Чего-то я недопонимаю в firewalld

Сообщение Olej » 26.05.2016 15:05

Bizdelnick писал(а):
26.05.2016 14:41
Беру свои слова обратно, виновником оказался не firewalld, а libvirt,

Если вы сейчас возитесь с firewalld, то выскажите (своё) мнение относительно того, чем firewalld лучше (или не лучше) более привычного (пока?) iptables?
(или не мвоё мнение, а ссылки на публикации в тему, если вы такие знаете)

Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 15764
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: Чего-то я недопонимаю в firewalld

Сообщение Bizdelnick » 26.05.2016 15:37

Учитывая, что это одна из многочисленных обёрток поверх iptables, как он может быть лучше? Может быть, что-то с ним чуть проще настраивается, но при умении обращаться с iptables он больше мешается. Вот гуёвые морды к нему, наверное, намного удобнее писать.
Пишите правильно:
в консоли
вкупе (с чем-либо)
в общем
вообще
в течение (часа)
команда
новичок
нюанс
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

Аватара пользователя
Olej
Сообщения: 659
ОС: Fedora, Mint, Debian, QNX

Re: Чего-то я недопонимаю в firewalld

Сообщение Olej » 26.05.2016 16:15

Bizdelnick писал(а):
26.05.2016 15:37
Учитывая, что это одна из многочисленных обёрток повер iptables, как он может быть лучше?

Он действительно работает поверх iptables, но он вводит новую модель и терминологию: использует сетевые зоны для определения уровня доверия сетевого соединения.
Это другая схема, поэтому не верно говорить, что это "обёртка".

Настраиваем службу FirewallD
Настройка firewalld CentOS 7 с примерами команд

Кроме того, во всех публикациях по firewalld имеется такой разделец типа "Избавляемся от FirewallD", т.е. вопрос ставится так: кому нравится - использует firewalld, кому не нравится - перенастраивает работу фойервола с традиционным iptables, т.е. это альтернативы: или то, или это.
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 15764
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: Чего-то я недопонимаю в firewalld

Сообщение Bizdelnick » 26.05.2016 16:23

Ну да, вводит новую модель, которая в абсолютном большинстве случаев избыточна.
Ну хотите — назовите не обёрткой, а дополнительным уровнем абстракции, как по мне — разница небольшая, только букв много набирать. Суть-то в том, что нельзя сказать, что он лучше или хуже iptables, потому что iptables он не заменяет.
Пишите правильно:
в консоли
вкупе (с чем-либо)
в общем
вообще
в течение (часа)
команда
новичок
нюанс
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

Аватара пользователя
Olej
Сообщения: 659
ОС: Fedora, Mint, Debian, QNX

Re: Чего-то я недопонимаю в firewalld

Сообщение Olej » 26.05.2016 16:44

Bizdelnick писал(а):
26.05.2016 16:23
Ну хотите — назовите не обёрткой, а дополнительным уровнем абстракции, как по мне — разница небольшая, только букв много набирать.

Обёртка в чистом виде (которых много) - это замена без никакой смены функциональности: sudo -> gksu, gdb -> ddd и т.д.

P.S. Кстати, подскажите, если знаете, как называется команда графической обёртки для sudo в Fedora 23? gksu там нет!

Bizdelnick писал(а):
26.05.2016 16:23
Суть-то в том, что нельзя сказать, что он лучше или хуже iptables, потому что iptables он не заменяет.

Ну не "лучше-хуже", я неправильно задал вопрос, а что удобнее и для каких случаев? (ведь настроив работу с firewalld вы просто так командами iptables пользоваться не сможете).
Какой смысл преследовался, когда они ввели этот дополнительный уровень.
Спасибо сказали:

BigBrother
Сообщения: 436
Статус: ¯\_(ツ)_/¯
ОС: linux based

Re: Чего-то я недопонимаю в firewalld

Сообщение BigBrother » 26.05.2016 16:52

firewalld - кусок дерьма и вместо упрощения жизни админам, делает ее сложнее. приходится им пользоваться, потому что центос7 встроил его по умолчанию в минимал образ. его конечно же можно удалить, но некоторый софт на него уже завязан, например когда ставишь fail2ban из репозитариев, он тянет firewalld как зависимость. нашел удобный способ (через --direct) им пользоваться, если надо добавлять/удалять простые правила. например так

Код: Выделить всё

firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -p tcp --dport PORT -s IP -j ACCEPT -m comment --comment 'blabla'
firewall-cmd --permanent --direct --remove-rule ipv4 filter INPUT 1 -p tcp --dport PORT -s IP -j ACCEPT -m comment --comment 'blabla'

после чего, появляется файл cat /etc/firewalld/direct.xml где все наши правила. так же, после --direct надо сделать systemctl restart firewalld
Спасибо сказали:

Аватара пользователя
Olej
Сообщения: 659
ОС: Fedora, Mint, Debian, QNX

Re: Чего-то я недопонимаю в firewalld

Сообщение Olej » 26.05.2016 16:56

BigBrother писал(а):
26.05.2016 16:52
firewalld - кусок дерьма и вместо упрощения жизни админам, делает ее сложнее. приходится им пользоваться, потому что центос7 встроил его по умолчанию в минимал образ.

И не только CentOS: Fedora, RedHat ... Scientific, наверное.

Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 15764
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: Чего-то я недопонимаю в firewalld

Сообщение Bizdelnick » 26.05.2016 17:13

Olej писал(а):
26.05.2016 16:44
подскажите, если знаете, как называется команда графической обёртки для sudo в Fedora 23?

А её там вроде бы и нет. Если есть что-то аналогичное, оно скорее всего работает через polkit, а не через sudo.

Olej писал(а):
26.05.2016 16:44
Какой смысл преследовался, когда они ввели этот дополнительный уровень.

Полагаю, прежде всего тот, о котором я писал выше:
Bizdelnick писал(а):
26.05.2016 15:37
гуёвые морды к нему, наверное, намного удобнее писать.

Другое его преимущество — легко жонглировать сетевыми интерфейсами, когда они постоянно меняются, но это всё-таки экзотический случай.
Пишите правильно:
в консоли
вкупе (с чем-либо)
в общем
вообще
в течение (часа)
команда
новичок
нюанс
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

Аватара пользователя
Olej
Сообщения: 659
ОС: Fedora, Mint, Debian, QNX

Re: Чего-то я недопонимаю в firewalld

Сообщение Olej » 26.05.2016 18:09

Bizdelnick писал(а):
26.05.2016 17:13
Olej писал(а):
26.05.2016 16:44
подскажите, если знаете, как называется команда графической обёртки для sudo в Fedora 23?

А её там вроде бы и нет. Если есть что-то аналогичное, оно скорее всего работает через polkit, а не через sudo.

Есть вот такое:

Код: Выделить всё

[olej@dell 23]$ dnf list kdesu*
Последняя проверка окончания срока действия метаданных: 3 days, 18:27:16 назад, Sun May 22 23:18:30 2016.
Доступные пакеты
kdesu.x86_64                                                      1:5.6.4-1.fc23                                                      updates

[olej@dell 23]$ dnf info kdesu*
Последняя проверка окончания срока действия метаданных: 3 days, 18:27:34 назад, Sun May 22 23:18:30 2016.
Доступные пакеты
Имя         : kdesu
Архитектура : x86_64
Эпоха       : 1
Версия      : 5.6.4
Релиз       : 1.fc23
Размер      : 54 k
Репозиторий : updates
Краткое опи : Runs a program with elevated privileges
URL         : https://quickgit.kde.org/?p=kde-cli-tools.git
Лицензия    : GPLv2+
Описание    : Runs a program with elevated privileges.

Но это, как я предполагаю, KDE.
А если Cinnamon?
Спасибо сказали: