URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 119161
[ Назад ]

Исходное сообщение
"Выпуск пакетного фильтра nftables 0.9.3"

Отправлено opennews , 05-Дек-19 12:20 
Опубликован выпуск пакетного фильтра nftables 0.9.3, развивающегося в качестве замены iptables, ip6table, arptables и ebtables за счёт унификации интерфейсов фильтрации пакетов для IPv4, IPv6, ARP и сетевых мостов. В пакет nftables входят компоненты пакетного фильтра, работающие в пространстве пользователя, в то время как на уровне ядра работу обеспечивает подсистема nf_tables, входящая в состав ядра Linux начиная с выпуска 3.13. Необходимые для работы выпуска nftables 0.9.3 изменения включены в состав будущей ветки ядра Linux 5.5...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=51980


Содержание

Сообщения в этом обсуждении
"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено pin , 05-Дек-19 12:20 
Богомерзкий json. Можно погибнуть в этом нагромождении скобочек, запятых и форматирования, разгребая уровни вложения.  

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Moomintroll , 05-Дек-19 12:32 
> Богомерзкий json.

Это не JSON - не хватает двоеточий между параметром и значением и кавычек для строковых литералов. И массивы странные.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Andrey Mitrofanov_N0 , 05-Дек-19 12:48 
>> Богомерзкий json.
> Это не JSON - не

Богомерзкий n-ginx?


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 14:13 
Бо-й nginx.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено крокодил мимо.. , 05-Дек-19 12:36 
>> Богомерзкий json.

зато сразу понятна как целевая аудитория, так и стремление исключить любые ручные правки конфига.. где-то уже был ньюс о гуях на расте/джаве/etc. для этого поделия, копирующих внешность винфаервола? нет? - значит будет..


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 12:54 
К нему в качестве фронтенда идет firewalld.

firewall-cmd --add-service=https
Чем плохо?


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 13:08 
firewalld по-умолчанию является фронтендом к iptables, который в свою очередь в современных дистрибутивах обычно заменен на генератор правил для nft.
При этом часть важных вещей, типа ip forward, через штатный интерфейс firewalld вообще никак не решается, и предполагается что ты будешь использовать т.н. direct-правила. И я так и не понял, как там писать direct-правила для nft. Впрочем, пока что и не надо было.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 13:37 
А объясните дураку еще одну вещь.

Если firewalld - фронтэнд к iptables/nftables - не суть важно в контексте вопроса, к чему именно, то почему, скажем, в свежеустановленном centos 8 нет ни iptables, ни nftables - их надо доустанавливать из реп. НО при этом есть firewalld, и он как-то работает!


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 13:59 
Я не изучал как именно это работает, но думаю он использует libxtables/libnftnl а не вызывает бинарники с параметрами.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 14:01 
Спасибо

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено anon123 , 05-Дек-19 15:21 
А глянуть в официальную документацию религия не позволяет?
https://firewalld.org/documentation/firewalld-structure+nfta...

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 15:28 
А я и заглянул. Вот сюда: https://firewalld.org/documentation/direct/options.html
Про добавление нативных правил для nft там ничего нет. Там только про iptables/ebtables А встроенных команд самого firewalld в некоторых случаях недостаточно.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено anon123 , 05-Дек-19 18:37 
https://firewalld.org/documentation/man-pages/firewalld.rich...

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 20:05 
А теперь попробуй с помощью этих правил разрешить ip forward между интерфейсами в разных зонах.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено pin , 05-Дек-19 14:54 
Я не могу представить ни себя и ни другого админа, который будет делать через firewalld роутинг, NAT, PBR, sets и т.п. Почитай возможности iproute2 и iptables и станет понятно, что firewalld это малая часть всего этого на языке кутлху.

Чем плох firewall-cmd --add-service=https ? По сравнению с print "Hello, world!" ни чем.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 15:04 
Ну я делал роутер на firewalld и networkd. Просто потому что захотелось упороться, а не в продакшн. В принципе, это реально. Только неудобно жутко. Даже на susefirewall2 роутер получался проще и лучше.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено anon123 , 05-Дек-19 15:22 
Там есть rich rules, которые всё это вполне позволяют

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено pin , 05-Дек-19 15:37 
Именно. Они там есть потому, что firewalld только бестолковая обертка.  

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено привет , 06-Дек-19 10:55 
А нафиг оно нужно то если первоисточник (иптаблес)
проще(логичнее) для понимания? Какой смысл изучения этой ерунды,
когда надежнее и вернее залезть под капот?

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 16:28 
ну вот решение и найдено - удалить нахрен iptables, чтобы под капотом был набор непонятных проводов, датчиков, надписей "no user servicable parts", можно - прикрытый второй крышкой, с двумя дырками - для маслянного щупа и для залива омывайки. Первая опциональна.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 08-Дек-19 02:57 
firewalld решает 4 задачи:
- унификация интерфейса iptables/nftables. Даже если iptables нет и даже утилит обратной совместимости нет, то оно универсальное.
- предложить готовый набор простых правил для большинства. Это самое статистическое большинство (видимо из клиентов редхата), ему не хочется знать iptables, ему надо 80-й и 443-й порт открыть, а тем кто делает NAT им и маскарада хватит. SNAT будьте любезны через rich-rule писать
- применяет гуманитарный подход работы с интерфейсами типа "частный", "доверенный", "публичный" итд в привязке к NetworkManager
- позволяет использовать системный рабочий фаервол для тех людей, которые хотят свои правила. Не вырубать фаервол и изобретать велосипед, а доопределить то что есть. Это касается только бекенда nft, в iptables так нельзя by design.

Но справедливости ради, он убог, плохо документирован, многословен и пишет конфиги в xml. А что есть что-то лучше для менеджмента фаервола из юзерспейса? Не вручную правила ядру кормить, а именно пользовательский интерфейс управления?


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 09-Дек-19 07:16 
> унификация интерфейса iptables/nftables

лол. Теперь у вас есть ТРИ совершенно разных интерфейса и три нескучных синтаксиса конфигов.

Эта унификация имела бы хоть малейший смысл, если бы у вас в одной и той же системе сегодня стоял iptables, а завтра nft. А послезавтра еще что-то. Но есть один ньюанс - даже если бы вы на самом деле стали так делать - вероятно, ровно потому, что понадобилась фича, которой у альтернативной версии - нет.

> Это самое статистическое большинство (видимо из клиентов редхата), ему не хочется знать
> iptables, ему надо 80-й и 443-й порт открыть,

ему не надо - оно и о портах никаких ничего не знает. yum install apache2 прекрасно о них позаботился бы сам, без ненужных прослоек - и да, можно даже с автоугадавом какой файрвол тут стоит и стоит ли вообще.

> в iptables так нельзя by design.

в iptables так можно by design - так, к примеру, делает докер, оставляя место для ручных правил и добавляя свои к существующему файрволу. Но вы ведь не умеете iptables, да? Вот и дефективный редхатовец не умел, ему б попроще чо.

> А что есть что-то лучше для менеджмента фаервола из юзерспейса?

в десяточке, да, есть. windows advanced firewall. В частности - после местного аналога install apache - он бы открыл порты - _апача_, а не "80 и 443", на которых, вполне возможно, слушает кто-то совсем другой.

Но вот это для макак слишком сложная задача, это программировать надо уметь, а не нескучные оберточки ляпать вокруг изуродованных другими макаками остатков когда-то хорошего пакетного фильтра.

Проблема только еще и в том, что пакетные фильтры в XXI веке практически свое отслужили.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено RHEL Fan , 09-Дек-19 10:20 
В редхате чтобы не слушал кто-то другой делает SELinux.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 09-Дек-19 12:06 
> В редхате чтобы не слушал кто-то другой делает SELinux.

Не, он такого не умеет (в targeted mode, а остальные, собственно, для красоты, пользоваться ими невозможно). Он наоборот - чтоб апач не мог слушать dhcp какой-нибудь.
Собственно, у остальных той же ерундой c похожими результатами занимается apparmor.

Итого две кривые полуфункциональные хрени вместо одной нормальной, а линукс все еще немного уже почти, но опять - не готов для десктопа.



"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 05-Дек-19 16:18 
> где-то уже был ньюс о гуях на расте/джаве/etc.

вы отстали от жизни. cockpit и html5 наше всьо!

> копирующих внешность винфаервола

детально копировать внешность нельзя - слишком явно будет видно, что возможности винфайрвола  скопировать не получится.

хотя, помнится, в гоме уже научились высовывать под руку диалог с невнятным предупреждением, но это опять лишь имитация того, что умеет винфайрвол.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено _hide_ , 06-Дек-19 13:34 
Это был сарказм?

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 16:33 
нет, попробуй через iptables ограничить доступ, предположим, netcat'у только внутрилокалочными адресами. Не юзеру, а /bin/netcat ;-)

advanced firewall - умеет.
То есть хоть мелкий и малоэффективный, но шажочек в сторону настоящего application firewall - сделан. А в линухе был и останется бесполезный в 2k19 пакетный фильтр, теперь еще и настраиваемый только через интуитивно-приятные поделки.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено pin , 06-Дек-19 17:15 
> нет, попробуй через iptables ограничить доступ, предположим, netcat'у

Сам придумал проблему, сам ее решай iptables'ом.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 08-Дек-19 03:08 
Это не надуманная проблема, это реальный блокер линукса на десктопе.

"Разрешить/запретить приложению Х тип сетевого взаимодействия Y" - это задача на данный момент не выполнимая пользователем. Ему требуется обратиться к системному администратору чтобы:
1. Написать правила для фаервола
2. Написать оверрайд для политики SELinux

И проблема тут не техническая, проблема тут организационно-инфраструктурная. Когда для выполнения задачи нужно взаимодействие 2-х подсистем ядре и еще чего-то в юзерспейсе, чтобы решить по-нормальному.
Обычно нужен целый редхат, который будет героически это решать добавляя новый модуль к системд или куда-то еще, чтобы получилось.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено RHEL Fan , 09-Дек-19 10:30 
Ну, в винде проблема другая, там пользователь тычет в "разрешить" не особо задумываясь, о чем его спрашивают. Если прав хватает. А если нет, то "Ему требуется обратиться к системному администратору".

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено имя , 06-Дек-19 19:22 
> нет, попробуй через iptables ограничить доступ, предположим, netcat'у только внутрилокалочными
> адресами. Не юзеру, а /bin/netcat ;-)

А потом всем неткатам на машине. А потом произвольно придуманной группе процессов. А потом…

xt_cgroup? xt_selinux?


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноноим , 05-Дек-19 19:53 
> копирующих внешность винфаервола?

Лучше винбокс.
Эх, вот бы "винбокс", работающий поверх стандартных линуксов, а не это удолбанное поделие в виде RouterOS.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 19:25 
Двоешник, это ни разу не json.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено all_glory_to_the_hypnotoad , 05-Дек-19 22:29 
Это вообще ни в каком виде не JSON. Кроме упомянутых : JSON характекрен заковычиванием всего. Стиль выше это си подобный синтаксис. На самом деле самый удобный если его правильно приготовить.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 12:44 
Оно, конечно, может быть и удобнее, но конфиг iptables читается куда легче. А это какой-то комшар.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 14:00 
А вы пишите для него правила в стиле iptables, раз вам так читабельнее.
nft add rule filter input iifname eth0 .........
nft add rule filter input iifname eth0 .........
nft add rule filter input iifname eth0 .........

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 14:55 
жесть какая

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 05-Дек-19 15:55 
вы, похоже, очередной вчерародившийся, "все старье нинужна,ниниужна!"

если это г-но, что вы тут родили, кажется вам похожим на iptables, да еще когда речь явно идет об удобочитаемости его правил...


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 23:04 
Не знаю как кто, но я разобрался с nftables за 1 день. Его структурный синтаксис мне как-то приятней.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 10:20 
разобрался - это кое-как ман прочитал?
Я так тоже могу, и не за один день, а за пять минут.

> Его структурный синтаксис мне как-то приятней.

пока не надо изменить одно правило из пятиста.
Которое в этой куче мусора еще найти надо.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено InuYasha , 06-Дек-19 11:39 
Для этого в nft изобрели даже сохраняемые комментарии.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 12:18 
угу, в nft, изобрели.

как вы достали, вчерародившиеся...


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 06-Дек-19 14:19 
Переделал все свои правила iptables в nftables. Получилось короче.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено sabitov , 06-Дек-19 19:37 
Чтобы получить хоть что-то читаемое пришлось писать так:

add rule  inet fw forward_udp \
        ip saddr @VM_list_4 \
        ip daddr @lan_list_4 \
                log prefix "VM to LAN deny: " \
                drop

Т.е. одна табуляция -- условия проверки, две табуляции -- что делать. На iptables боевой фаервол занимает ~3100 строк, что за портянка будет если переписать его nft даже думать страшно.

Ну и как вишенка, полное отсутствие перспектив с ipt_netflow https://github.com/aabc/ipt-netflow/issues/45


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено InuYasha , 06-Дек-19 11:36 
Синтаксис другой, но хороший, легко читаемый. Есть возможность всё красиво отформатировать. А наличие переменных и инклюдов в конфиге - это вообще сказка.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 12:48 
Документация к нему есть?
Не "записки на манжетах" в виде десятка разрозненных wiki-страниц с неактуальными данными, а вменяемое что-то?

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 12:54 
Документацию у авторов отобрали санитары

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 12:59 
man 8 nft недостаточно хорош?

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 05-Дек-19 15:58 
конечно нет, и не будет никогда, повторять подвиг автора lartc, которому ни одна с-ка из альтернативно-одаренных разработчиков не попыталась помочь, зато весело вопили "все не так и ты вообще ничего не понимаешь" - дураков уже двадцать лет не находится.

Вот тебе ман, да, с сваленным в кучу миллионом команд и параметров, наслаждайся чтением (лучше - зазубри  наизусть, как положено каждому примерному (запрещенное слово), любителю обмазываться свежайшим).

Интересно - iptables сначала сломают окончательно, потом удалят из ядра, или наоборот?


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено InuYasha , 06-Дек-19 11:30 
Есть, но некоторые мелочи из неё неочевидны (например, что нельзя там одну хрень писать если есть одно ключевое слово и другую, если она после первой).

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 13:14 
Годнота, раньше на iptables-ах пользовался ferm, на фряхе пф-ом. Перешел на nftables без проблем

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 13:52 
>Возможность сборки CLI-интерфейса с библиотекой linenoise вместо libreadline.

Они хотят nftables и бздунам пропихнуть?


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Andrey Mitrofanov_N0 , 05-Дек-19 13:58 
>>Возможность сборки CLI-интерфейса с библиотекой linenoise вместо libreadline.
> Они хотят nftables и бздунам пропихнуть?

"Базовую систему" (нет, не б3дунов, а винукс Фо.) избавляют от GPLv3 зависимостей.

Микрософт сказал, что GPLv2== можно, а GPLv3+....  ....ещё не сказал -- нельзя.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 14:05 
А что так-то, Микрософт же тепереча стал борцом с патентами, участник OIN ? В GPLv3 главное отличие - отношение к патентам.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Иваня , 05-Дек-19 14:31 
Классный инструмент, спасиб

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Николашка , 05-Дек-19 16:04 
Помер "Линукс"!

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 05-Дек-19 16:13 
скорее, "сделался вечноживой". Но в целом, да, тот линукс - давным-давно мертв.

А тут - "новый стандарт", под мудрым руководством ibm.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 23:07 
Оно появилось лет за 5 - 6 до покупки Шляпы ещё.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 06-Дек-19 00:27 
Поболе.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 10:21 
причем тут "оно", это просто еще один червяк в трупе, тыщи их. Линух как нормальная юникс-система кончился уже тогда.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 06-Дек-19 14:34 
Конкретно, когда?

P.S. Кто тебя заставляет использовать, к примеру, тот же systemd? Или складывается впечатление, что ты кроме в RHEL или в CentOS не могёшь.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 14:58 
> Или складывается впечатление, что ты кроме в RHEL или в CentOS не могёшь.

я в неподдерживаемую маргинальную хрень - не могу, потому что работаю ей за деньги, а не по любви.
И диверсий производить не могу - кому-то потом за мной разгребать. Поэтому если iptables заменяют враппером - будем использовать враппер, и наслаждаться глюками. Окончательно заменят firewalld+nft глюкалом - будем настраивать через rich rules. Потому что если вручную все это снести и заменить iptables - что-нибудь непременно сломается, не сегодня так завтра. А оно должно работать и поддерживаться специалистом, вероятно, из вчера-родившихся, поскольку я невечен. (зато он помнит наизусть стопиццот заклинаний для nft и знает как сгенерить имя для mount.unit)

Ну и собрать на коленке свой дистрибутив - тоже уже не очень, ни времени, ни вдохновения. Поэтому для себя, помимо дорабатывающих свой век на древнем железе legacy - где-то freebsd, где-то 2008R2, а где-то уже скоро и 2019 будет.
И десяточка на недоноуте, потому что uefi32 и тачскрин не особенно оставляют выбор.

А линуксу - место останется только на кофемолках.

Ну, хрен ли, я еще собак выгуливать могу. Никому не надо? Крупные породы, собаки со специальными требованиями, мойка лап включена.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено сосед , 11-Дек-19 17:17 
Если есть волкодавы - можешь к нам приехать - волков бить - по 20 тр за шкуру платят)))

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 17:15 
на него можно перетащить правила iptables не снимая свитера (вроде был какой то конвертер, но насколько он точный?)? И есть ли смысл, или сабж пока шибко сырой?

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 05-Дек-19 18:08 
конвертер год назад, когда я попытался им воспользоваться, ниасилил тривиальный набор правил, по-моему, даже не имевших вложенных цепочек.

Полагаю, это все, что нужно о нем знать.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено InuYasha , 06-Дек-19 11:28 
я тоже мануально переходил. но синтаксис очень понравился, хотя есть некоторые неочевидные места и хреновый вывод ошибок. в целом стало удобнее ipt.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 15:00 
> я тоже мануально переходил. но синтаксис очень понравился, хотя есть некоторые неочевидные
> места и хреновый вывод ошибок. в целом стало удобнее ipt.

с этого места поподробнее - что стало "удобнее", кроме чудовищного синтаксиса, непригодного для нормальной работы из шелла? (впрочем, пора забывать про  нее вообще)


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено pin , 06-Дек-19 17:23 
> хреновый вывод ошибок

о да, они все за одно

# systecmt start proftpd

# echo $?

0

# pgrep proftpd

# echo $?

1


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 09-Дек-19 10:03 
вы просто отсталый замшелый мамонт, неспособный зазубрить новый ненужный интерфейс - надо было journalctl "_SYSTEMD_UNIT=proftpd.service" -xe (как же ж удобно этот бред набирать) - и вы бы увидели... result is RESULT!

И вообще, вон отсюда со своим замшелым ftp. Оно еще и в модном-современном файрволе застревает, и вообще устаревшее небебезопастное ненужно!

P.S. на самом деле - systemctl status proftpd - таки умеет exit codes, причем их существенно больше вариантов 0/1 - просто мы ж такие все из себя параллельные-быстрые, что не имеем возможности синхронно запустить юнит - хотя очень старались и даже отдельный свитч для асинхронного запуска предусмотрен, отключенный по умолчанию. Ну нишмагла, шибко торопилась.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Olololo , 05-Дек-19 18:04 
Есть VPN провайдер с кучей серваков по всему миру, IP адреса и подсети у них не пересекаются.
У меня канал 100 мбит/с, один коннект openVPN к серваку даёт максимум 25 мбит/с.
Хочу запустить несколько одновременных openVPN подключений к разным сервакам, чтобы одновременно использовать эти коннекты и тем самым повысить общую скорость. В Компе стоит или одна или две сетевухи на выбор.
Проблема в том, что если запустить второй коннект с VPN серваку то openVPN переписывает правила маршрутизации под себя и работает только последний запущенный коннект, а остальные коннекты ничего через себя не пропускают.
Вопрос, как решить задачу? Задача вообще решаема?

p.s. пример вывода в логе второго коннекта openVPN где он переписыват правила первого коннекта openVPN

/sbin/ip route del XX.XX.138.195/32
/sbin/ip route del 0.0.0.0/1
/sbin/ip route del 128.0.0.0/1
/sbin/ip addr del dev tun1 10.7.0.3/24
/sbin/ip link set dev tun1 up mtu 1500
/sbin/ip addr add dev tun1 10.7.3.2/24 broadcast 10.7.3.255
/sbin/ip route add XX.XX.138.195/32 via 192.168.1.1
/sbin/ip route add 0.0.0.0/1 via 10.7.3.1
/sbin/ip route add 128.0.0.0/1 via 10.7.3.1


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Olololo , 05-Дек-19 18:05 
Похожая идея описана тут, но у меня нету никаих ошибок при запуске второго коннекта, он просто переписывает все правила под себя.

https://airvpn.org/entry/?aek_v=14&aek_id=a643f4c04a43bda89f...


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Olololo , 05-Дек-19 18:10 
Это лог первого коннекта

/sbin/ip link set dev tun0 up mtu 1500
/sbin/ip addr add dev tun0 10.7.3.3/24 broadcast 10.7.3.255
/sbin/ip route add XX.XX.244.59/32 via 192.168.1.1
/sbin/ip route add 0.0.0.0/1 via 10.7.3.1
/sbin/ip route add 128.0.0.0/1 via 10.7.3.1


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 05-Дек-19 18:17 
> Вопрос, как решить задачу? Задача вообще решаема?

нет, нерешаема.
То есть была бы решаема (с некоторыми нехорошими глюками), если бы ты общался с хостом в той же vpn-сети.
А ты лезешь через nat вовне vpn, в результате, даже если бы у тебя получилось - у тебя syn уедет через один выходной _белый_ ip адрес, а следующий за ним пакет - через другой, и будет уронен на пол получателем, поскольку с тем-то айпишником он еще не знаком.

Но вот заменить
    /sbin/ip route add 0.0.0.0/1 via 10.7.3.1
    /sbin/ip route add 128.0.0.0/1 via 10.7.3.1
на две разные половинки - вероятно можно.
Хинт: команды ip route можно набирать самому, а openvpn'ы, полагаю, вполне можно развесить на _разные_ туннели.

У тебя оба лезут в tun1


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Olololo , 05-Дек-19 18:23 
>У тебя оба лезут в tun1

Нет, они лезут правильно один в tun0, другой в tun1, это просто лог старый. Тем не менее оно все равно не работает.

>Но вот заменить
>/sbin/ip route add 0.0.0.0/1 via 10.7.3.1
>/sbin/ip route add 128.0.0.0/1 via 10.7.3.1
>на две разные половинки - вероятно можно.

Чем это будет полезно?


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 05-Дек-19 19:43 
> Нет, они лезут правильно один в tun0, другой в tun1, это просто лог старый.

тогда иди в "форумы" (тут и не место, и сотрут быстро) и приведи там нормальные логи, целиком и из одной сессии, а заодно и конфиги openvpn.
Гадать на поддельных логах собранных из разных кусков, что на самом деле у тебя произошло, лично мне влом.

> Чем это будет полезно?

тем что траффик на половину интернета пойдет в одну дырку, на другую половину - в другую. При наличии более чем одной сессии можно в сумме получить больше, чем пропускная способность единственной дырки.
С торрентами, учти, не прокатит.



"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Olololo , 05-Дек-19 18:41 
Если в комп поставить несколько сетевых карт, подключить их к самодельным маршрутизаторам на rosberyPI (одна сетевуха к одному rosberyPI маршрутизатору) на которых на каждом будет поднят свой отдельный VPN подключённый к отдельному серваку.
Такой вариант позволит одновременно использовать эти VPN серваки и суммировать скорость?

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Урри , 05-Дек-19 18:45 
RaspberryPI

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 05-Дек-19 19:45 
такой вариант лишь продемонстрирует твою криворукость. Все можно сделать в пределах одного физического устройства и единственной сетевой карты с тем же самым результатом (что-то будет работать, что-то, из-за ната, нет).

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 19:47 
росбери его на пи...

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 05-Дек-19 22:10 
Откуда у людей такие наркоманские идеи?

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 10:23 
люди ниасилили пяток страниц майкрософтовского учебника "что нужно знать про tcp/ip каждому недоучившемуся студенту, мечтающему о карьере админа". Не говоря уже о более сложных книжках.
Изучали предмет по манам, вон как там в тредике выше. Что делает ip ro ad - знают, но смысл этих действий - понимают очень и очень приблизительно.

А сон разума всегда рождает чудовищ.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 06-Дек-19 01:01 
Проблема решается, используя VDS и баундинг. Просто, вместо реальных сетевых интерфейсов, у тебя будут ВПНы. Гугли на тему: bonding iproute2. Во времена, когда провайдеры были "неторопливыми и дорогими", решал так проблему подключения через двух провайдеров. Кстати, тебя еще ожидают незабываемые квесты с очередью пакетов и балансировкой нагрузки. Удачи!

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 10:24 
вы бредите.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 06-Дек-19 15:13 
Вы не понимаете.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Ананимас009 , 06-Дек-19 04:55 
Если мне не изменяет склероз маршрут прописывается лишь если это указано в конфиге, можно не прописывать маршрут по умолчанию и воспользоваться советом поха разделив весь интЫРнет на колич4ство подсетей,кратных количству аплинков и прописать каждому его маршрут.
Вообще все это полная хрень и нормально решается лишь покупкой AS и BGP, как у взрослых дядь.
А все эти костылики с самопальным разделением и балансировкой годится лишь для обучения и понтов.

но что-то мне подсказывает, что скороть упирается в канал, предоставляемый провайдером (с чего ты вообще взял что пров обязан предоставлять тебе 100мбит круглые сутки, гарантированная скорость обычно оговаривается отдешьно и стоит совсем другие шекели, не чита домашниму итОрнету за копейки) .
Либо упирается в сам опенвпн и его настройки сжатия и шифрования.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 08:16 
> Если мне не изменяет склероз маршрут прописывается лишь если это указано в конфиге

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

> Вообще все это полная хрень и нормально решается лишь покупкой AS и BGP, как у взрослых дядь.

взрослые дяди, владельцы платных vpn-сетей, вполне могут предоставить услугу, не требующую по взрослому, без трусов, давать в ...пу райпу, но она будет за другие деньги, а пока они ему канал зашейпили на 25мегабит ;-)

Впрочем, возможно и не они, а у его провайдера столько во весь внешний мир, оверсабскрайбнутое раз в сто и с потерями.

А "костылики" с параллельной маршрутизацией это как раз правильное решение для больших сетей (внутреннее, необязательно для этого иметь свою as) - в отличие от пион...нецветочковых поделок с etherchannel и прочей бредятиной позапрошлого века, так любимых бестолковыми инженерами времен декадно-шаговых АТС.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Olololo , 06-Дек-19 10:54 
>если присмотришься, там оно тунель сносит и заново создает, а не толко маршрут по умолчанию подменяет

tun оно не сносит, во втором логе нужно заменить tun1 на tun0. Оно только маршрут подменяет, но одновременно висят оба tun0 и tun1, но используется только последний созданный.

>короче, сперва руки надо выпрямить

с руками всё нормально, я использовал только обычную команду (см. ниже) на запуск VPN, всё остальное openVPN сам делает.

sudo openvpn  /etc/openvpn/tcp/dg43.tcp.ovpn


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Olololo , 06-Дек-19 10:49 
>скороть упирается в канал, предоставляемый провайдером (с чего ты вообще взял что пров обязан предоставлять тебе 100мбит круглые сутки, гарантированная скорость обычно оговаривается отдешьно и стоит совсем другие шекели, не чита домашниму итОрнету за копейки)

У меня стоит машина на Linux и рядом iMac. Машина на Linux через один из VPN серваков выкачивает для торрент на скорости в 1.2 мбайт/с, через второй VPN сервак выкачивает на скорости 2.2 мбайт/с. iMac без всякого VPN выкачивает torrent на скорости 8-9 мбайт/с. Всё это проверялось много раз и почти одновременно.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено ф , 06-Дек-19 00:20 
чейта как-то стремно...

надеюсь iptables еще долго не выкинут


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 06-Дек-19 04:01 
Там net-tools уже выкидывают. :(

Сабж я так и не осилил, но думаю рано или поздно придётся разобраться тоже.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 06-Дек-19 09:00 
>Там net-tools уже выкидывают. :(

Их уже 20 лет выкидывают и никак выкинуть не могут. С iptables так же будет.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 10:26 
net-tools сломать очень сложно - слишком примитивен (в отличие от используемого в iproute) интерфейс ядра. А iptables сломают легко и непринужденно.

Да и учитывая, что он по сути и так всегда был поломан - ждать, по-моему, осталось недолго. Кто- нибудь, нежно касаясь клавиатурки макбучека (оплаченного, конечно же, корпоративными денежками) провозгласит, что оно нинужно-нинужно, устаревшие портянки. И хор идиотиков - радостно подпоет.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 06-Дек-19 09:09 
> выполняется в специальной виртуальной машине, напоминающей BPF (Berkeley Packet Filters).

больше виртуальных машин. Что-то линукс быстро работает... аж подозрительно.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 10:28 
и эксплойтов этой х-ни давно что-то не публиковали...

хотя бы kernel.unprivileged_bpf_disabled=1, надеюсь, все уже включили?


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 06-Дек-19 10:38 
мне больше интересно при каком PPS оно загнется.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 11:30 
зависит же ж, что ты на нем наbpf'ал. iptables-то тоже можно все собрать в один огромный плоский список, и потом плакать что все медленно и пакеты теряет.

Причем, не удивлюсь, если в bpf-исполнении такой список будет еще медленней ;-)


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Ordu , 06-Дек-19 13:04 
> не удивлюсь, если в bpf-исполнении такой список будет еще медленней

Я не удивлюсь, если он окажется быстрее. Без тестов сложно сказать, как оно будет, потому что цепочка вызовов предкомпилированных фильтров и скомпилированная цепочка фильтров -- это заметно разные вещи. С чисто теоретической точки зрения можно предположить, что компиляция в этом случае открывает широкие просторы для оптимизации -- можно же и ненужные дублирующиеся телодвижения выкинуть, уменьшив таким образом нагрузку на проц, и локальность кода повысить, уменьшив таким образом нагрузку на кеш. А то, что это байткод, дык его потом можно в ядерный jit-компилятор засунуть, и получить native-код, который делает то же самое.

То есть тут ситуация, в которой вообще сложно удивляться какому бы то ни было результату сравнения производительности, потому что диванных рассуждений тут недостаточно, чтобы увести неопределённость предсказаний зело в сторону от 50/50 -- либо медленне, либо быстрее.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено пох. , 06-Дек-19 13:46 
> С чисто теоретической точки зрения можно предположить, что компиляция в этом случае открывает
> широкие просторы для оптимизации

угу, а так же для очень нетривиального траблшутинга, когда компилятор что-то тебе такое наоптимизирует, совсем тобой неожидаемое. А отладчик bpf - это нечто, безусловно очень простое, понятное и доступное (его уже вообще хотя бы - пишутъ?)

А теперь вопрос знатокам - а нахрена оно все, с перекладыванием оптимизации на компилятор, сдалось в такой несложной, в общем-то, задаче, как набор правил примитивного пакетного фильтра? И нельзя ли вместо этого девляпса просто выпороть?

> То есть тут ситуация, в которой вообще сложно удивляться

да нет, удивляться "как так, да не может же ж быть" - вполне несложно, но, примерно оценивая и осмысленность поставленной эффективными менеджерами редхата задачи, и подход к ее решению, и общий уровень нынешнего софта - я заранее вношу поправку на ветер. И вот тогда - получается 50/50.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Ordu , 06-Дек-19 21:22 
>> С чисто теоретической точки зрения можно предположить, что компиляция в этом случае открывает
>> широкие просторы для оптимизации
> угу, а так же для очень нетривиального траблшутинга, когда компилятор что-то тебе
> такое наоптимизирует, совсем тобой неожидаемое.

Компилируй для траблшутинга без оптимизаций, проблем-то? Я всегда в сложных случаях отладки с C врубаю -O0.

> А отладчик bpf - это нечто,
> безусловно очень простое, понятное и доступное (его уже вообще хотя бы
> - пишутъ?)

Зачем он тебе? Ты в байткоде bpf планируешь писать фильры?

> А теперь вопрос знатокам - а нахрена оно все, с перекладыванием оптимизации
> на компилятор, сдалось в такой несложной, в общем-то, задаче, как набор
> правил примитивного пакетного фильтра? И нельзя ли вместо этого девляпса просто
> выпороть?

Ну, во-первых, файрволл станет примитивным, если из него выкинуть все фильтры и оставить интерпретатор простенького байткода. А до того, как такая чистка проведена, он вовсе не примитивный, достаточно глянуть на список опций в menuconfig, перечисляющий всякие разные опциональные фильтры. Во-вторых, оптимизации, о которых я говорю, будет выполнять либо компилятор, либо никто. Либо компилятор посмотрит на твои правила, и подумает как бы таких их посчитать максимально эффективно, либо он не будет смотреть и ничего не будет делать, и в рантайме будет выполняться куча вещей, которые можно было бы выполнить один раз компиляцией. Как собрать цепочки и состыковать ты в любом случае будешь думать самостоятельно, но в случае если эти цепочки реализуются на табличках itables, то при передаче каждого пакета с одного фильтра на другой, заглядывает в табличку, достаёт оттуда указатель на фильтр, из него достаёт указатель на функцию, вызывает её... во всём этом очень много ненужных телодвижений процессора, и много ненужных телодвижений кешу. Ты можешь быть хоть семи пядей во лбу оптимизатором, но всё равно используя iptables ты не избавишь систему от них, потому что iptables не для этого.

>> То есть тут ситуация, в которой вообще сложно удивляться
> да нет, удивляться "как так, да не может же ж быть" -
> вполне несложно, но, примерно оценивая и осмысленность поставленной эффективными менеджерами
> редхата задачи, и подход к ее решению, и общий уровень нынешнего
> софта - я заранее вношу поправку на ветер. И вот тогда
> - получается 50/50.

Да, я знаю, что когда ты оцениваешь софт, ты делаешь это не по его техническим характеристикам, не по результатам тестов, а исключительно на основании своего субъективного отношения к менеджменту и к современным программистам. Ты мог бы не рассказывать об этом ещё раз, мне кажется все и так уже знают.

Ты ж админ, и всякие высоконагруженные случаи админишь? У тебя есть куча знаний и возможностей потестить? Ну дык потесть, выложи результаты тестов, раскрути свой аккаунт на хабре, или где там ты излагаешь результаты своих изысканий? Вот я ничего не админю, даже локалхост последнее время я не админю, потому что уже лет десять как он просто работает. Я иногда переустанавливаю систему, но тоже в "ленивом" режиме, чтобы оно само в фоне там собиралось и ставилось, не мешая при этом мне в интернетиках комментить. Но это даже не админство локалхоста, это, немного льстя себе, можно назвать "паверюзер". И это значит, что я не могу сравнить legacy iptables и интерпретатор байткода по производительности и прочему потреблению ресурсов на задачах хоть сколько-нибудь приближенных к реальности, потому что я не знаю, что это за задачи. Но меня гложет профессиональное любопытство, я бы с огромным интересом почитал бы про исследование нацеленное на сравнение, или даже нашёл бы скрипт который бы сравнивал, чтобы его можно было бы палочкой потыкать и своими глазами посмотреть, куда и зачем в разных случаях тратятся ресурсы.

Ты, казалось бы, обладаешь всеми квалификациями, для того чтобы провести такое исследование, но вместо этого ты рассуждаешь об эффективности менеджеров, и в прочую гуманитарщину лезешь, что мне совершенно неинтересно, потому что уж в гуманитарщине-то я точно больше твоего понимаю.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Аноним , 06-Дек-19 23:09 
Тебе не надоело каждый раз портянки бредового текста строчить? Какие тесты, какой хабар?
Ну был вон там один анестезиолог, что-то пописывал и всех убеждал. Его сначала на резиновых катали. А потом на его идеях Инго всё Коновское переписал. И теперь Инго молодец а про Кона почти никто не помнит. Мне в своё время тоже хватило общения с авторами опенсурс ПО - снобов каждый если не второй то третий. И теперь я предпочитаю учиться на чужих ошибках и знать историю.

"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Ordu , 07-Дек-19 10:14 
> теперь я предпочитаю учиться на чужих ошибках и знать историю.

Чужие ошибки -- это конечно ленивый способ учиться, но люди тупые, они даже ошибиться как следует не могут. Пока сам не ошибёшься, не получишь настоящей ошибки.


"Выпуск пакетного фильтра nftables 0.9.3"
Отправлено Ordu , 06-Дек-19 12:56 
Виртуальные машины -- это круто, это повышает надёжность. На компьютере Apollo крутилось от 5 до 7 виртуальных машин, даже несмотря на то, что там и так вычислительных ресурсов было с гулькин нос.