На прошедшей в конце прошлой недели в Берлине конференции Netfilter workshop (https://workshop.netfilter.org/2018/), объединившей разработчиков Linux-подсистемы фильтрации и модификации пакетов Netfilter, было принято решение (http://ral-arturo.org/2018/06/16/nfws2018.html) о переводе семейства программ iptables (включая ip6tables, arptables и ebtables) в разряд устаревших, что отразится в именах соответствующих бинарных файлов:- /sbin/iptables-legacy- /sbin/iptables-legacy-save- /sbin/iptables-legacy-restore- /sbin/ip6tables-legacy- /sbin/ip6tables-legacy-save- /sbin/ip6tables-legacy-restore- /sbin/arptables-legacy- /sbin/ebtables-legacy
Место оригинальных исполняемых файлов займут программы, ранее именовавшиеся "compat" (например, iptables-compat): они имеют такой же синтаксис командной строки, однако транслируют полученные правила не в блобы ip_tables, а в BPF-программы nf_tables. Таким образом, будет осуществлён прозрачный переход с iptables на nftables, оставляющий возможность использования legacy-инструментов в случае каких-либо проблем. Тем не менее, пользователям настоятельно рекомендуется мигрировать на штатный формат правил nftables. Для этого они могут воспользоваться автоматическими трансляторами, в частности, iptables-translate.
Разработчики Netfilter уже достигли договоренности об отражении соответствующих изменений в дистрибутивах RedHat, Fedora, CentOS, SUSE, Debian и производных от них. Кроме того, поддержка nftables уже реализована в firewalld, что упростит процесс миграции для пользователей этого инструмента.URL: http://ral-arturo.org/2018/06/16/nfws2018.html
Новость: https://www.opennet.me/opennews/art.shtml?num=48814
Замечательно, nftables ещё до версии 1.0 не доросло, а iptables уже устарело.
это Линукс детка - стабильное API no sence и все такое.
Можешь сам продолжать поддерживать iptables.
> это Линукс детка - стабильное API no sence и все такое.
> Можешь сам продолжать поддерживать iptables.не сможет - через неделю поломают апи так, что нужно будет переписать пол-ядра.
Конец эпохи, единственное, что, казалось, в линуксе еще не испоганили полностью - ip стек.
> Конец эпохи, единственное, что, казалось, в линуксе еще не испоганили полностью - ip стек.Да он изначально был... как бы это сказать помягче... А уж iptables - образцово-показательный пример на тему "как не надо делать фаерволы".
Netfilter кстати - офигенный шаг вперед, до классики типа zbfw ему конечно еше очень далеко, но... может лет через 20 и в линаксе появится полноценный фаервол.
«Все файрволы что не cisco — плохие», очень аргументировано конечно, спасибо, но нет.
Не надо песен, iptables - норм приблуда, ты еще ipchains не видел.
Видел. То же г-но. Ни разу не сетевой фаервол.
Норм приблуда только для мамкиного аналитика.
Для промышленного использования без патчей ядра - не годится.
Ты что несёшь? iptables - это и есть инструмент для управления нетфильтром.
Аргументы? Нет, не слышал.
nonsense относится только к *внутренним* API ядра. Внешнее API, как то: системные вызовы, формат сообщений, посылаемых через netlink-сокеты, и тому подобное — обратно-совместимы. Например, вызов fork сейчас не используется, вместо него fork() из glibc вызывает clone. Но ядро всё ещё поддерживает fork, поэтому старые программы будут работать на новом ядре.
по тестам работает достаточно стабильно и беспроблемно поэтому всё хорошо.
пц.
Управляемый руками и читаемый глазами пакетный фильтр - вычеркиваем из редеющего списка преимуществ линyпса. Его уже (тоже) нет."поддержка интегрирована в firewalld" - очередной yблюдочный монстр, который за вас будет думать, какие пакеты пропускать, а какие необязательно. Вот им и пользуйтесь.
Какое счастье, что по сумме, в общем-то, случайных совпадений и личных глюков я месяц назад выбрал asa вместо "а ну ее нахрен, запилим на линуксе очередной недо-файрвол, пакетного фильтра/ната тут на десять лет хватит, а больше и не надо"
> пц.
> Управляемый руками и читаемый глазами пакетный фильтр - вычеркиваем из редеющего списка
> преимуществ линyпса. Его уже (тоже) нет.
> "поддержка интегрирована в firewalld" - очередной yблюдочный монстр, который за вас будет
> думать, какие пакеты пропускать, а какие необязательно. Вот им и пользуйтесь.
> Какое счастье, что по сумме, в общем-то, случайных совпадений и личных глюков
> я месяц назад выбрал asa вместо "а ну ее нахрен, запилим
> на линуксе очередной недо-файрвол, пакетного фильтра/ната тут на десять лет хватит,
> а больше и не надо"а чего не на ng_ipfw ?
Барон не любит, чтоб потруднее.Мне был нужен простой, удобочитаемый и без особых фокусов пакетный фильтр/pat
Ни сам по себе ipfw, ни тем более уродливое наслоение нетграфов такового не обеспечивают.цискин (новый, к старому претензий не было) формат вполне омерзителен, но разобраться можно, даже когда там уже сотни хостов и специфичных правил.
iptables проще и во многом удобнее (и надежнее), но, к счастью, линукс там подниматься с первой попытки не захотел, и мне не придется теперь либо вручную латать древние ядра, либо "запустите наш чудесный конвертер правил, и убедитесь, как он легко и просто...ой, нет, эту запись мы не распарсили, выбросьте, она вам не нужна, мы лучше знаем", а отлаживать, если что-то работает не так как задумано - "а зачем, у нас, разработчиков с тремя единственно-верными правилами, таких проблем не бывает".
>на ng_ipfwзанчение знаешь?
Воь же нытики. Ты по прежнему можешь использовать синтаксис iptables для настройки фаервола. Но весь твой синтаксис будет транислроваться в nf_tables в ядре системы. Для тебя никакой разницы -- для разработчиков минус одно легаси апи от которого уже десяток лет пытаются уйти.
> Воь же нытики. Ты по прежнему можешь использовать синтаксис iptables для настройки
> фаервола. Но весь твой синтаксис будет транислроваться в nf_tables в
> ядре системы.и ты в результате видишь список своих правил, не имеющих ни малейшего отношения к тому, во что они понатранслировались.
> Для тебя никакой разницы -- для разработчиков минус одно
это для разработчиков, ни разу в жизни не видевших сложных правил "никакой разницы". Да и тот десяток что видели, за них докер понасоздавал.
> легаси апи от которого уже десяток лет пытаются уйти.
я бы предпочел минус все модные-современные апи. Их и без вас хватает.
> не имеющих ни малейшего отношения к тому, во что они понатранслировались.Да ладно тебе. iptables ужастен, IMO.
ipfw лично мне всегда больше нравился.Может у тебя вообще синдром утёнка?
Т.е. твоим первым файерволом был iptables и поэтому ты его любишь?
нет. Потому что задача "быстро разобраться в сложной конструкции с натами, резервными каналами, ipsec поверх всего этого, когда что-то пошло не так" в случае ipfw нерешаема в принципе. Полагаю, если кто-то построит нечто подобное на nft, результат будет даже хуже, но никто уже, наверное, и не построит.
Я точно мараться не буду - "вам нужен файрвол? Вооон там вход в отдел ИБ".> Т.е. твоим первым файерволом был iptables и поэтому ты его любишь?
моим первым файрволлом был ipfwadm. он г-но.
Мы были вполне счастливы, когда его заменили ipchains. Часть того функционала (как модулей, так и cli) не воспроизведена _по_сей_день_ - генитальным разработчикам некогда, они придумывают транслятор в json.
Все познается в сравнении.Пока лучше pf с его anchors ничего не придумали.
> Может у тебя вообще синдром утёнка?Написали бы сразу "импринтинг" — вроде и умнее и менее обидно для оппонента что-ли.
>> и ты в результате видишь список своих правил, не имеющих ни малейшего отношения к тому, во что они понатранслировались.Когда ты пишешь на высокоуровневом языке программирования, ты тоже видишь свой код, не имеющим никакого отношения к машинным командам, в которые он трансформируется при компиляции.
> Когда ты пишешь на высокоуровневом языке программирования, ты тоже видишь свой код, не имеющим
> никакого отношения к машинным командам, в которые он трансформируется при компиляции.да. В результате - ни реверс чужого решения, ни отладка своего вне пределов, предоставляемых ide, невозможны без адского геморроя.
В разработке это оправдано экономией времени и более-менее устоявшимся качеством инструментов (хотя, надо сказать, в те времена, когда я был разработчик, искать в отладчике ошибки, привнесенные компилятором, случалось) - при условии что хотя бы код написан не по правилам языка программирования(сюрприз!) а по принятым стандартам писания именно кода. Иначе еще и его прочитать может быть невозможно - при вполне тривиальной задаче, им решаемой.В случае достаточно простой вещи, которой являются пакетные фильтры, у которых, кстати, с 2001го года нет отладчиков, альтернативно-одаренные улучшайки ниасилили, экономия не то что нулевая, а отрицательная - пока ты всю эту развесистую многострочную клюкву ради единственного правила напишешь или найдешь в уже написанной нужное место...
А вот как раз разбираться в чужом (в том числе автогенеренном, у чего вообще нет читаемого исходника) или что-то менять в своем - нужно регулярно.теперь добавь к этому инструментарий версии 0.чтототам, вику вместо документации (сравни man iptables и man nft) и поделки вроде докера и ufw.
> Когда ты пишешь на высокоуровневом языке программирования, ты тоже видишь свой код,
> не имеющим никакого отношения к машинным командам, в которые он трансформируется
> при компиляции.У всех компиляторов C/C++ был замечательный ключик - компилировать в ASM. Прогоняешь один и тот же текст с разными ключами уровня оптимизации и вполне себе смотришь "что он там наоптимизировал" на критичных к быстродействию участках кода. Что, сейчас это уже "отменили"?
> У всех компиляторов C/C++ был замечательный ключик - компилировать в ASM. Прогоняешь
> один и тот же текст с разными ключами уровня оптимизации и
> вполне себе смотришь "что он там наоптимизировал" на критичных к быстродействию
> участках кода. Что, сейчас это уже "отменили"?А может ли такое заинтересовать людей, для которых скорость компиляции важнее всех прочих вещей?
>> Воь же нытики. Ты по прежнему можешь использовать синтаксис iptables для настройки
>> фаервола. Но весь твой синтаксис будет транислроваться в nf_tables в
>> ядре системы.
> и ты в результате видишь список своих правил, не имеющих ни малейшего
> отношения к тому, во что они понатранслировались.Трансляция iptables-compat обратима.
Слив засчитан.
> Трансляция iptables-compat обратима.
> Слив засчитан.сюсипуси взрослым дядям засчитывают слив? Твоя "трансляция" не справилась не то что с нетривиальным файрволом, о которых была речь, а с банальным фильтром на локалхосте.
Обратима, да - те правила, что не поняла, их и оборачивать не придется, а те полтора, что асилила - да, обратима, наверное.
> и ты в результате видишь список своих правил, не имеющих ни малейшего
> отношения к тому, во что они понатранслировались.Ты и раньше не знал, во что они транслировались. Но почему-то раньше тебе было достаточно видеть текстовое представление, из которого создавались реальные правила, а теперь почему-то нет.
> и ты в результате видишь список своих правил, не имеющих ни малейшего
> отношения к тому, во что они понатранслировались.нет, это не так. трансляции обратимы.
> это для разработчиков, ни разу в жизни не видевших сложных правил "никакой
> разницы". Да и тот десяток что видели, за них докер понасоздавал.разработчики как раз видели правила побольше и получше вашего.
ровной по той причине есть такая штука в nftables как verdict maps.
Ну вы явно утрируете, никто не заставляет пользоваться firewalld (я лично даже не пробовал его, мне достаточно было глянуть как он работает). nftables гораздо более удобный формат, как для чтения, так и понимания (например, как в iptables смотреть длинные цепочки в разных таблицах). Думаю хороший инструмент получился, может и побыстрее.
> Ну вы явно утрируете, никто не заставляет пользоваться firewalld (я лично даже
> не пробовал его, мне достаточно было глянуть как он работает). nftables
> гораздо более удобный формат, как для чтения, так и пониманиясерьезно? Вот эту развисистую лапшу, требующую полтора экрана вместо одной строки, и не разделяемую в принципе на изолированные сегменты, вам "удобно понимать" ?
> (например, как в iptables смотреть длинные цепочки в разных таблицах). Думаю хороший
покажите пример - скорее всего либо grep придумали не для вас, либо вы применяете таблицы не по назначению.
Мне обычно достаточно посмотреть ровно одну таблицу, если это писал я - я знаю, какую. Обычно я "смотрю" ее grep'ом.> инструмент получился, может и побыстрее.
меня скорость iptables вполне устраивала. Понятия не имею, что надо наслесарить, оставаясь в рамках примитивной фильтрации пакетов, чтобы перестала.
Для остального есть PA7050. В общем-то, и недорого.
"Удобочитаемый" формат, который можно прочитать только грепом? Вы стебeтесь, да?
> "Удобочитаемый" формат, который можно прочитать только грепом? Вы стебeтесь, да?разница в том, что подeлие на nft _даже_ грепом прочитать - нельзя.
Счастье разглядывать длинные псевдо-структурированные простыни или парсить на коленке модный json - бесценно.И да, я предпочитаю грепом выцепить одну нужную строчку, а вы можете и дальше искать ее глазами среди сотен (особенно интересно - если ее там как раз нет). Зато красиво раскрашенных и отформатированных модным-стильным-молодежным софтом.
Не упирайтесь! пришло время освоить sed!
sudo nft list table inet filter | sed -n '/chain input {/,/}/p'
> парсить на коленке модный jsonman jq
а чо сразу не xml? man xmlstarlet
Лёне идейку подкиньте, он с радостью вам бинарный формат запилит импортируемый отдельным сервисом в xml, yaml и json.
> Лёне идейку подкиньте, он с радостью вам бинарный формат запилит импортируемый отдельным
> сервисом в xml, yaml и json.вы не поняли - они _уже_ запилили, Лёня не понадобился. И да, у них есть экспорт в xml и json. Вменяемых средств управления - разумеется, нет.
> "Удобочитаемый" формат, который можно прочитать только грепом? Вы стебeтесь, да?Называется мразина не умеющая читать каким-то чудом пишет...
>как в iptables смотреть длинные цепочки в разных таблицах{ iptables -L цепочка1; iptables -L цепочка1 -t mangle; iptables -L цепочка1 -t nat; } | less
можно еще алиас на iptables -L сделать чтобы меньше писать.
вообще, печально за ИТ спецов, их всякие редхаты и гуглы отучают думать головой, а они и рады :)
> nftables гораздо более удобный формат, как для чтения, так и пониманияВидимо поэтому его за 4 года никто так и не захотел использовать, потому что он удобный и понятный, да?
Многие программы управления межсетевым экраном поддерживают его. Я ждал, пока в firewalld поддержку добавят, и, вот, дождался.
Нужно было добавлять много правил типа -j DNAT в iptables программно, из-за чего нужно было вручную следить за количеством правил в таблице, чтобы iptables не тормозил. С nftables же автоматически используются хешированные таблицы, в которые можно добавлять данные независимо от самого описания правила.
> ... firewalld" - очередной yблюдочный монстр, который за вас будет думать ...
> ...
> Какое счастье, что по сумме, в общем-то, случайных совпадений и личных глюков я месяц назад выбрал asa ...да не переживай ты так.
всегда можешь найти себе оправдание.
(Типа один раз не.. и тд.):D
После джунипера от твоего удобного пакетного фильтра вытекают глаза.
> После джунипера от твоего удобного пакетного фильтра вытекают глаза.покажите свой сложный (не на одну страничку в 25 строк) набор правил. Фильтрация, нат/pat, сложные протоколы, ipsec без default permit.
А что же бздуны не пользуются своими системами xBSD для фильтрации трафика? ;)
> А что же бздуны не пользуются своими системами xBSD для фильтрации трафика? ;)Ох уж эти знатоки с гордо задранной гузкой:
> однако транслируют полученные правила не в блобы ip_tables, а в BPF-программы nf_tables.
> BPFBPF Berkeley Packet Filter
BSD Berkeley Software Distribution% man bpf
> HISTORY
> The Enet packet filter was created in 1980 by Mike Accetta and Rick
> Rashid at Carnegie-Mellon University. Jeffrey Mogul, at Stanford, ported
> the code to BSD and continued its development from 1983 on. Since then,
> it has evolved into the Ultrix Packet Filter at DEC, a STREAMS NIT module
> under SunOS 4.1, and BPF.
>
> Управляемый рукамиХорошо, когда у тебя 1 сервер, да и тот localhost с LA 0.0. Уже забыл, когда руками iptables вызывал в проде…
хорошо когда "прод", "ответственность успешно переложена на никого" и т д. А дырки в фильтре за тебя делает докер, да? -i !docker0 -o docker0 -j ACCEPT (не понимаю только, зачем тебе какие-то nft, ты их все равно никогда не видишь)А когда у тебя десяток софтсвитчей (и в мир торчит h323, да, они для того и стоят) - к примеру, уже очень нехорошо (в том числе потому, что при ошибке - LA быстренько разгонится до непотребных значений и контора попадет на очень заметные деньжата).
Да, руками, каждый индивидуально (есть, разумеется, общие chain'ы, раздаваемые из svn, но они не главные- клиенты на каждом свои, настройки тоже свои)
когда у тебя пара файрволлов периметра сложной сетки - их тоже, внезапно, настраивают индивидуально (а потом еще и траблшутить часто приходится - тоже индивидуально). Впрочем, да, в одном крупном банчке сделали не индивидуально. "мы настройки сделали, закрой, пожалуйста, задачу, kpi падает. А порты? А когда ансибля проползет по всем железкам, тогда и откроются. Нет, ускорить не можем." Ну чо, закрыл - они ж не выбирают чем им пользоваться, за них топ-топ менеджмент уже выбрал. Спрашивать, как они в этой автоматике будут искать ошибку, не стал, за бесполезностью.
> пц.
> Управляемый руками и читаемый глазами пакетный фильтр - вычеркиваем из редеющего списка
> преимуществ линyпса. Его уже (тоже) нет.Фигню написал.
Было - iptables -t filter -A OUTPUT -j DROP -d 1.2.3.4
Стало - nft add rule ip filter output ip daddr 1.2.3.4 drop
Стало гораздо более читаемо имхо. До нормального синтаксиса конечно еще далеко, один daddr чего стоит, но гораздо лучше чем всякие -t, -A, -j, -d и прочий краснoглазый сленг.
> Стало гораздо более читаемо имхо.Для знакомого с iptables стало хуже читаться, не намного, правило то простое, но хуже. Что будет на сложном, страшно представить.
> но гораздо лучше чем всякие -t, -A, -j, -d и прочий краснoглазый сленг.
Если ты видишь эти ключи раз в несколько лет, то возможно 'add rule' лучше чем '-A', но если ты с этим работаешь регулярно, то однозначно хуже.
Проблема нормального сетевого оборудования и заключается в том что ты в худшем случае правишь его конфиги раз в несколько месяцев, а обычно - поставил и оно годами работает, не требуя ручного вмешательства. И когда ты залезаешь на железку через несколько месяцев - тебе необходим удобочитаемый и самодокументированный конфиг. В тех же кошках нет ничего "волшебного" - обычная кетайская железка с индусским кодом... кроме ее конфигов, который открываешь через пару лет - и тебе сразу все понятно. Ну и понятное дело - документация, она просто великолепно. Только формат конфигов и документация - все остальное на твердую троечку.
твоя лавка уже банкрот или еще готовится ?
"проблема нормального сетевого оборудования" в не-банкротах в том, что сеть развивается (или растет/меняется абонентская база, если ты не обслуживаешь, а предоставляешь услугу) и новые сервисы/изменения в существующих происходят постоянно.В тех же кошках волшебного - как раз железка, просто, похоже, кое-кто не видел ничего кроме самых дешевых мыльниц. Успехов тебе собрать на коленке из китайских запчастей что-нибудь вроде asr99xx или того же банального nexus. wlc/lwap попыталась изобразить из дерьма и палок убиквитя, все кто не сталкивался - матерят циску на чем свет стоит (в оправдание циске - она это купила, в готовом виде), а кто после этого вынужден был мигрировать на уби- те молчат и только шипят что-то нечленораздельное, перезагружаясь раз в день.
В софте, впрочем, тоже есть некоторая магия - попробуй изобразить asa (вот это почти обычная писюковая плата, причем дешевейшая и с дохлым процессором) из линуксов и опенсорся (ну, да, разумеется- active-standby, ipsec-клиенты, наты-паты и так далее, при switchover голос может хрюкать, но не должен рваться)ну и на закусочку:
> который открываешь через пару лет - и тебе сразу все понятноа люди все фейлят и фейлят ccie practical exam за полтора косаря. "сразу все понятно", ага.
Ты знаешь - нормально спроектированная сеть практически не требует вмешательства в уже установленное оборудование при подключении нового. Внезапно да?
В тех же кошках, если немного пошамать с инфой, доступной по sh ver, обнаруживается стандартная кетайская железка. Внезапно, ога? Правда собрать самому - проблема в разы более сложная, это вам не писюк. Да и если соберешь - софт хоть и индусский, но в опенсорце с его аналогами наблюдается проблема - факт.> а люди все фейлят и фейлят ccie practical exam за полтора косаря. "сразу все понятно", ага.
В конфиге - сразу все понятно. Разумеется если ты знаешь те протоколы, которые там используются. А вот с этим-то обычно и возникает проблема - со знанием протокола. :)
nftables же вроде уже хоронили, после выпуска bpfilter.
Хоронили какие-то левые люди, не имеющие отношения к Netfilter core team.
И bpfilter так и остался на стадии прототипа.
> Хоронили какие-то левые люди, не имеющие отношения к Netfilter core team.
> И bpfilter так и остался на стадии прототипа.Да, он в альфе, но уже в 4.18 будет
Важно понимать, что дальше просто заменят одну vm(nftables) на другую(ebpf).
https://lwn.net/Articles/747551/
> Кроме того, поддержка nftables уже реализована в firewalld, что упростит процесс миграции для пользователей этого инструмента.Вот счастье-то привалило...
Радоваться или плакать?
"фаерволД"-конечно плакать
Интересно, а что большинство анонимусов не знают что iptables это всего лишь один из интерфейсов к нетфильтру? Грубо говоря языком описания правил. И что под капотом у nftables тоже самое что и у iptables. И что nftabes делает почти та же команда что и iptables
> И что nftabes делает почти та же команда что и iptablesи сколько в "почти той же" осталось авторов изначального iptables ? Дайте угадаю - их там и не было никогда.
> и сколько в "почти той же" осталось авторов изначального iptables ? Дайте
> угадаю - их там и не было никогда.Да их и в команде разработчиков iptables уже лет двадцать как нет. Так что не показатель.
> Да их и в команде разработчиков iptables уже лет двадцать как нет.Вот только iptables, который появился в ядре 2.4 нет 20 лет. Упс.
> Интересно, а что большинство анонимусов не знают что iptables это всего лишь один из интерфейсов к нетфильтру?
> Грубо говоря языком описания правил. И что под капотом у nftables тоже самое что и у iptables.Нетфильтр предоставляет набор хуков и управление списками функций обратного вызова, привязанных к этим хукам. А вот вся работа по анализу и фильтрации трафика осуществляется внутри этих колбеков, которые и являются "мозгом" iptables (на самом деле, оно xtables называется) и nftables. И вот эти мозги xtables и nftables построены на разных принципах, и работают иначе.
> Нетфильтр предоставляет набор хуков и управление списками функций обратного вызова, привязанных
> к этим хукам. А вот вся работа по анализу и фильтрации
> трафика осуществляется внутри этих колбеков, которые и являются "мозгом" iptables (на
> самом деле, оно xtables называется) и nftables. И вот эти мозги
> xtables и nftables построены на разных принципах, и работают иначе.Хуки...
А почему у вас такой скудный словарный запас, что не смогли подобрать подходящее русскоязычное обозначение?
КАК??? А как же это https://www.opennet.me/opennews/art.shtml?num=48117 ???
> КАК??? А как же это https://www.opennet.me/opennews/art.shtml?num=48117 ???Ну как, как, сначала переедут на nf_tables, а когда оно таки хоть как-то заработает и устаканится - будут переходить на bpfilter.
Что ты хочешь от современных смузи-хлёбов? Они как юные троцкисты - сначала все снести, а потом, а потом, а потом может что-то как-то само заработает.
Или нет. В общем неважно. Главное это снести все работающее. Это модно и молодежно.
> Ну как, как, сначала переедут на nf_tables, а когда оно таки хоть
> как-то заработает и устаканится - будут переходить на bpfilter.Смузи-стартап bpfilter не взлетел, не парьтесь.
ну потом будет другой переезд. потом - это потом.
> КАК??? А как же это https://www.opennet.me/opennews/art.shtml?num=48117 ???все норм, как только тебе удастся починить сложные системы после перехода на nft, они как раз его тоже объявят устаревшим, можешь начинать заново.
И это тоже работа админов. А если ничего не будет менятся, всё будет продолжать работать , как бы, само собой, то работодатели начнут задумываться, а нужны ли вообще админы.
> И это тоже работа админов. А если ничего не будет менятся, всё
> будет продолжать работать , как бы, само собой, то работодатели начнут
> задумываться, а нужны ли вообще админы.Работодатели тоже не нужны, всё же и так работает.
Для мальчиков, симулирующих деятельность, "шоб не выгнали": вменяемое начальство платит вменяемым админам именно за то, чтоб работало. Их не волнует, будет он при этом серверы руками держать или автоматом разворачивать.
> все норм, как только тебе удастся починить сложные системы после перехода на
> nft, они как раз его тоже объявят устаревшим, можешь начинать заново.По-моему, эта болячка у шляпы началась самое позднее с apache2...
> КАК??? А как же это https://www.opennet.me/opennews/art.shtml?num=48117 ???Патчи bpfilter были подготовлены для ядра Linux 4.18, однако, по итогам дискуссии, были признаны не готовыми для включения в данный выпуск. На этом пыл разработчиков как-то угас. Скорее всего, про bpfilter просто забудут.
>> КАК??? А как же это https://www.opennet.me/opennews/art.shtml?num=48117 ???
> Патчи bpfilter были подготовлены для ядра Linux 4.18, однако, по итогам дискуссии,
> были признаны не готовыми для включения в данный выпуск. На этом
> пыл разработчиков как-то угас. Скорее всего, про bpfilter просто забудут.патчи живут уже в net-next, а в bpfilter заинтересованы многие. одна из причин - это возможность оффлоада ebpf в сетевые карточки.
Если брать не только тусовку дпдк-шников, у которых есть карточки нетронома, то получаются далеко не многие.
> Если брать не только тусовку дпдк-шников, у которых есть карточки нетронома, то
> получаются далеко не многие.это вопрос времени. ebpf дизайнился довольно просто: взяли общее среднее от популярных на рынке ISA(amd64/arm64/s390/etc..) и на их основе сделали байткод ebpf. Потому большая часть инструкций ebpf маппится 1 в 1 на инструкции процессора.
> Кроме того, поддержка nftables уже реализована в firewalld, что упростит процесс миграции для пользователей этого инструмента.
> The workshop was sponsorized by vmware, zevenet, **redhat**, intra2net, oisf, stamus networks, and suricata.Опять шапка гадит.
>> Кроме того, поддержка nftables уже реализована в firewalld, что упростит процесс миграции для пользователей этого инструмента.
>> The workshop was sponsorized by vmware, zevenet, **redhat**, intra2net, oisf, stamus networks, and suricata.
> Опять шапка гадит.Ничего личного, just business.
Какой-такой firewalld? Должно быть systemd-firewalld.
> Какой-такой firewalld? Должно быть systemd-firewalld.В systemd фаерволом рулит systemd-networkd.
>> Какой-такой firewalld? Должно быть systemd-firewalld.
> В systemd фаерволом рулит systemd-networkd.Слишком просто. Надо systemd-networkd-firewalld.
>Таким образом, будет осуществлён прозрачный переход с iptables на nftables, >оставляющий возможность использования legacy-инструментов в случае каких-либо >проблем. Тем не менее, пользователям настоятельно рекомендуется мигрировать на >штатный формат правил nftables.Так в итоге в ядре будет использоваться новый bpfilter (https://www.opennet.me/opennews/art.shtml?num=48117) или же не ставший популярный nftables?
Интересно, какие-то упорышы уже планируют выпуск дистрибутива "без nftables"?
Docker, k8s не умеют и не будут уметь. AWS тоже.
> Docker, k8s не умеют и не будут уметь. AWS тоже.да ну, что вы. Они как раз любят пользоваться послезавтрашними фичами ядра, еще не написанными.
Следующая версия разучится iptables.
> Интересно, какие-то упорышы уже планируют выпуск дистрибутива "без nftables"?Если удалят /sbin/iptables-legacy то почему нет? Непонятно только зачем вы незнакомых вам людей называете «упорышы»?
Всем здрям! Я новичок в линуксе. Подскажите, решил изучить iptables, а тут получается что он уже устарел? Если у меня Ubuntu 18.04 - есть ли там iptables по умолчанию, или уже что-то новое стоит и надо изучать?
Кстати да, интересный вопрос - что там щас в текущей LTS *buntu? firewalld?
firewalld - RHEL based
ufw - ubuntu based
> Всем здрям! Я новичок в линуксе. Подскажите, решил изучить iptables, а тут
> получается что он уже устарел? Если у меня Ubuntu 18.04 -
> есть ли там iptables по умолчанию, или уже что-то новое стоит
> и надо изучать?Есть и будет. В ближайшие несколько лет никто на nftables не перейдёт. То, что iptables объявлены устаревшими проявляется лишь в том, что переименовали несколько файлов. На этом вся движуха и заглохнет.
К тому же ещё nftables пока не поддерживает весь функционал iptables. Плюс ещё много кто пользуется сторонними модулями для iptables с которыми тоже что-то придется решать.
Блин, та же проблема) у меня есть книжка 2010 года про Linux, там сотни команд и есть глава про iptables. Придется покупать новую?((
Сначала эту прочти. Я вообще учил iptables по книжкам, где ipchains описывался. Полет нормальный.
> Блин, та же проблема) у меня есть книжка 2010 года про Linux,
> там сотни команд и есть глава про iptables. Придется покупать новую?((За 8-10 лет могли много чего поломать/добавить (теперь ещё и бинарники переименуют).
Читайте актуальную документацию в интернетах, смотрите код, примеры, рассылки, багтрэкер.
Вообще забейте на покупку книжек в IT. Во первых там часто булшит (если это не классика от авторов языка/протокола/программы)
во-вторых, пока один пишет книгу, например про API (хорошая книга не пишется за неделю) - остальные этот API меняют.
Попробовал запустить в виртуалке nftables на Ubuntu 18.04 LTS:> ~$ nftables
> nftables: команда не найденаКак команда то называется?
nft
apt-get unstall nftables
А зачем вам? Если вы не можете за 5 секунд самостоятельно выяснить, как называется команда, как вы будете разбираться, как ей пользоваться?
Разработчики Netfilter уже достигли договоренности об отражении соответствующих изменений в дистрибутивах RedHat, Fedora, CentOS, SUSE, Debian и производных от них.То есть все основные дистры, что ж будем готовиться к сюрпризам =D
Видимо я совсем пропащий слоупок, но недавно мне сказали что ifconfig тоже ВСЁ. Запустил свою UBUNTU 18.04 и вот что она мне сказала:Command 'ifconfig' not found, but can be installed with:
sudo apt install net-tools
Что вообще происходит в этом мире? Я только год назад овладел этой командой и научился кое-как настраивать сети. Теперь мне начинать все сначала? А через год появится еще десяток новых команд для настройки сетей? Кто вообще форсит эти метаморфозы? Есть ли хоть какое-то ПОСТОЯНСТВО в Linux, или админ должен страдать? Кто теперь вместо ifconfig? Где официальная инфа? :(
> Кто теперь вместо ifconfig?ip
Но почему? Кому это все надо? Где преимущества?Только что я ввел команду ip link и вместо четкого ровненького вывода ifconfig - получил какую-то мешанину из интерфейсов, совершенно нечитаемую.
> Но почему? Кому это все надо? Где преимущества?ifconfig плохо показывает конфигурацию с несколькими адресами на интерфейсе, ограничение в используемом API ядра, которое без слома обратной совместимости не поменять.
Это лишь один из примеров, а так все новые фичи делаются в netlink API и в пакете iproute, соответственно.Вообще, ifconfig депрекейтнут года эдак с 2000-го. То, что ты обмазывался несвежими туториалами с лиссяры - это твои личные проблемы.
> Только что я ввел команду ip link и вместо четкого ровненького вывода
> ifconfig - получил какую-то мешанину из интерфейсов, совершенно нечитаемую.
> ifconfig плохо показывает конфигурацию с несколькими адресами на интерфейсеА в чём эта плохость выражается?
Запустил тут ifconfig, он мне 3 адреса показал, 1 IPv4 и 2 IPv6. Типа вот такого выдал:
wlp4s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.x.x netmask 255.255.255.0 broadcast 192.168.x.x
inet6 fe80::xxxx prefixlen 64 scopeid 0x20<link>
inet6 xxxx prefixlen 64 scopeid 0x0<global>Выглядит вроде неплохо.
alias ip='ip -c -d -h'
Не работает. Нет таких опций.
Пёттеринг as a Sergice.
айпироут или айпироут2
Так надо было не ubuntu ставить а Arch, тогда был бы на гребне волны и писал что у вас этого ещё не завезли.
> Что вообще происходит в этом мире? Я только год назад овладел этой
> командой и научился кое-как настраивать сети.Год назад она уже была давно объявлена устаревшей. Как и 5 лет назад. Вообще с 2009 года.
> Год назад она уже была давно объявлена устаревшей. Как и 5 лет
> назад. Вообще с 2009 года.c 2000го. Или осени 99го даже - где -то именно тогда ank мне писал "это кривой враппер для совместимости сами не знаем с чем, как и route, забудь и переучивайся на ip". Нужны были для какой-то вычурной ситуации, когда в ядро не помещался netlink socket, а сеть в принципе- откуда-то бралась.
Но здесь совсем другой мех - "полностью совместимые" реализации ifconfig/route не умеют вообще ровно ничего (а что они должны делать, если у интерфейса банально не один адрес?)
реализации которые сравнимы (frebsd'шный ifconfig) - мало того что ни на что непохожи и ни с чем кроме самих себя несовместимы за пределами совсем тривиальных настроек, так еще и имеют совершенно омерзительную и нелогичную систему параметров ("угадайте, что в данной фазе луны означает -link 2", превед)то есть отказ от старых врапперов a) обоснован b) вызван коренной сменой архитектуры net3. Причем совместимость, насколько могли, сохранили и в ядре, и в его интерфейсах (вплоть до поддержки ненужно-алиасов)
> недавно мне сказали что ifconfig тоже ВСЁ
> Есть ли хоть какое-то ПОСТОЯНСТВО в Linux, или админ должен страдать?Патрик - бог! Остальное временно.
Ого, за ссылку спасибо, ну очень круто объяснено!
Вопрос не в том стоит ли послать линукс подальше после всех новвоведений как это было в свое время сделанно с бсд, вопрос на что перейти, чтобы не шыло на мыло менять.
Переходи на виндоус! Индус не предаст)
Так с него лет 20 назад и перешел с начала на бсд потом на линукс...
> Переходи на виндоус! Индус не предаст)После семёрки они там тоже стали вносить новенькое
> Вопрос не в том стоит ли послать линукс подальше после всех новвоведений
> как это было в свое время сделанно с бсд, вопрос на
> что перейти, чтобы не шыло на мыло менять.стоит потратить некоторое время на изучение нововведений, либо свалить в манагеры.
можно ещё центось поставить и обновлять её раз в 10 лет. лучше конечно подучиться.
> лучше конечно подучиться.Это и был вопрос по подучиванию - на что перейти...
> вопрос на что перейти, чтобы не шыло на мыло менять.на божественную десяточку. Работой ее админы, владельцы сокровенного знания, будут обеспечены еще много-премного лет (интуитивно-приятная управлялка виртуальными машинами не умеет до сих пор даже склонировать vm из снапшота - хотя из ps все возможно)
И сильно переучиваться не придется - все те же бинарные логи с супер интерфейсом (и да, можно через cli, и grep ненужно), те же автомагические "сервисы" (впрочем, умеющие "Deferred startup", ссустемда не научилась, как и не запускать до настройки), те же привычки у устанавливаемого софта разом понапихаться в кучу неудобоудаляемых мест в системе, не спрашивая у тебя, надо ли, прекрасный неуправляемый файрвол, умеющий высовывать дурацкие окошки под руку (мечта авторов firewalld, пока, увы, мелькающая только в туманной дали)
и даже родной vim с putty. Правда, первым нечего редактировать, а вторым разьве что на виртуалку с линуксом ходить. Для "своих"-то есть msctc, который умеет все то, чему X'ы уже никогда не научатся, некому, а вяленый тем более (тем некогда, они его на го будут переписывать, если еще не)
> впрочем, умеющие "Deferred startup", ссустемда не научиласьОтложенный запуск юнита можно организовать через "ExecStartPre=/bin/sleep 3", через запуск юнита по таймеру с типом OnBootSec. Так же можно организовать запуск через сокет, если софт это умеет. Но зачем? Линукс в отличии от винды не шуршит диском 5 минут после загрузки что бы точку восстановления сделать (или чем там винда занимается), можно просто зависимости расставить так, что бы нужные сервис оказался в конце очереди на запуск.
> как и не запускать до настройкиВо первых это вопрос к менеджеру пакетов, а не к systemd. В Centos yum ничего не запускает после установки. Во вторых решается просто: "RUNLEVEL=1 apt install -y PKG_NAME".
Ну эти двое и так видно что уже на финишную прямую вышли, вопрос не в этом.
nftables не на BPF работает, там свой формат
eBPF там конечно есть но как идин из модулей
Сколько кипежа на пустом месте. Как стая бакланов, в самом деле)) firewalld это не часть системдэ, а только по звучанию схоже - и ладно, б-г с ним тогда.
б-г=о?
Вон по слухам SuSEfirewall2 тоже заменяют на firewalld - это имхо куда больший повод для обсуждения и выкриков с места =) Хотя мне уже пофиг, я с Сусе давно убрался.
> Вон по слухам SuSEfirewall2 тоже заменяют на firewalldте кто ими пользуются - не заметят разницы (потому что на самом деле не знают, что они ими пользуются).
Те кому все равно сносить и ставить свои вменяемые скрипты - тоже, в общем, на один сервис меньше удалять будут, и ладушки.
Зачем притягивать nftables, когда он уже и сам legacy и ему на смену идёт bpfilter на основе штатного eBPF?
> Зачем притягивать nftables, когда он уже и сам legacy и ему на
> смену идёт bpfilter на основе штатного eBPF?Больше костылей богу костылей!!!! =))))
bpfilter ещё 10 лет будет "идти", энтерпрайз он такой.
Чем отличаются "не в блобы ip_tables, а в байткод nf_tables", друг от друга? Кто нибудь может пояснить?
> Чем отличаются "не в блобы ip_tables, а в байткод nf_tables", друг от
> друга? Кто нибудь может пояснить?блобы ip_tables - это по сути библиотека функций, которая выполняется на уровне ядра.
байткод nf_tables - похожие на BPF отдельные программы, запускаемые в виртуальной машине в ядре, но собираемые и обслуживанием на пользовательском уровне.
>> Чем отличаются "не в блобы ip_tables, а в байткод nf_tables", друг от
> блобы ip_tables - это по сути библиотека функций, которая выполняется на уровнеи это немодно.
> байткод nf_tables - похожие на BPF отдельные программы, запускаемые в виртуальной машине
и это круто.
Чо неясно-то? "виртуальная машина", "bpf", менеджеры писают кипятком, гранты оформляются с небывалой щедростью и быстротой.
А на packet tracer грант никто не даст.
Что? Я ж ещё с ipchains на iptables не перешёл!
>The ipchains software was superseded by the iptables system in Linux kernel 2.4 and above.Ну и ретроград вы, батенька!
Я - тоже, да и не собираюсь - дождусь пока не вернутся к Цепочкам.
Это они улучшают улучшаемость, или увеличивают увеличиваемость?
Мне, как эксплуатационщику, хотелось бы, чтобы инструменты были удобными, простыми и надёжными...
что то у меня вики nft.org вообще не открывается...хотя я юзаю firewalld + nftables в убунту...даже попробовал что то конвертировать, как nft сделать чтобы показало таблицы? по моему нифига он не сконвертировал, оставлю все так, по ману лень шерстить..., а вики их по миграции не пашет, да и сайт не открывается кстати.
Что-то на LKML про это ничего нет.
я что то в убунту не видел в упор никакого iptables-translate, только iptables-restore-translate + ip6tables-restore-translate, первый отрабатывает нормально, а второй из-за firewalld кидает ошибки какие то по синтаксису одного ICMP правила.
Как обычно сборище нытиков с ЛОРа набежало. Так же было с ненужносистемд, пшшшшш-аудио и много ещё чего. Как будто кто-то запрешает использовать старые инструменты, которые много лет просто работали.
Тебе как аналитику локалхоста невдомёк, что одни программные продукты зависят от других и ты радостно призываешь всех недовольных системд стать маинтейнрами и маинтейнить свой дистрибутив. Показательно, что вместо того, чтобы спросить или погуглить ты тут начинаешь выдавать претензии к виртуальным набежавшим лоровцам. Скажи, мы это должны от тебя будем терпеть все твои каникулы?
Пришлось ставить и настраивать firewalld на Kali Linux Light и Parrot...
ОБЪЯСНИТЕ ПЛЗ!!! Который день пытаюсь понять.Есть в линуксе файрвол - netfilter.
Есть 2 морды для него: iptables и nftables.
Есть ufw - убунтушная морда для морды iptables...
Какое место во всем этом винегрете файрволов и морд занимает firewalld?
1. В вики написано что он является мордой над iptables (типа как ufw).
2. В официальной документации вот такая схема:
https://firewalld.org/documentation/concepts.html
Если верить схеме, он может быть мордой и над nftables.
3. Но тогда какого xрена в зависимостях жесткое требование именно iptables?
> Зависит: iptables
Что такое firewalld и какого его место в иерархии всего этого???
https://ru.m.wikipedia.org/wiki/Nftables
Он же на замену приходит а значит какое то время будут оба для совместимости
Так глядиш и лог будет бинарный как в PF ;)