The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск пакетного фильтра iptables 1.8.10

11.10.2023 10:10

Опубликован выпуск классического инструментария для управления пакетным фильтром iptables 1.8.10, развитие которого последнее время сосредоточено на компонентах для сохранения обратной совместимости - iptables-nft и ebtables-nft, предоставляющих утилиты с тем же синтаксисом командной строки, как в iptables и ebtables, но транслирующих полученные правила в байткод nftables. Оригинальный набор программ iptables, включая ip6tables, arptables и ebtables, в 2018 году переведён в разряд устаревших и уже заменён на nftables в большинстве дистрибутивов.

В новой версии:

  • В утилиту xtables-translate добавлена поддержка правил insert, в которых указан номер индекса (преобразуются в ntf-правила 'insert rule ... index N').
  • В ebtables-nft добавлена поддержка таблиц broute (bridge route).
  • В отладочном выводе утилиты nft-variants, включаемом при указании опции "-v" несколько раз, обеспечен показ имеющихся set-наборов.
  • Добавлена поддержка имён "mld-listener-query", "mld-listener-report" и "mld-listener-done" для обращения к сообщениям ICMPv6 с типами 130, 131 и 132.
  • Обеспечен корректный разбор выражений "meta mark" и их преобразование в правила "-j MARK", что может потребоваться для смешивания nftables и iptables-nft в одной таблице.
  • Устранены накопившиеся ошибки.


  1. Главная ссылка к новости (https://www.mail-archive.com/n...)
  2. OpenNews: Выпуск пакетного фильтра nftables 1.0.8
  3. OpenNews: Уязвимость в nftables, позволяющая повысить свои привилегии
  4. OpenNews: Выпуск пакетного фильтра iptables 1.8.9
  5. OpenNews: Для ядра Linux предложен новый пакетный фильтр bpfilter
  6. OpenNews: Разработчики Netfilter официально объявили инструментарий iptables устаревшим
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/59905-iptables
Ключевые слова: iptables
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (40) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.5, Аноним (5), 11:55, 11/10/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    > Оригинальный набор программ iptables, включая ip6tables, arptables и ebtables, в 2018 году переведён в разряд устаревших и уже заменён на nftables в большинстве дистрибутивов.

    Пользуясь моментом, хочу спросить - где-нибудь есть нормальная документация по синтаксису nftables? man nft весьма отрывочный, а официальная wiki - просто сборник примеров рабочего синтаксиса, никак не объясняющий принципы его построения (типа "мы запустили fuzzing, и вот эти строки nft схавало как корректные").

     
     
  • 2.7, Аноним (7), 14:19, 11/10/2023 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > man nft весьма отрывочный, а официальная wiki - просто сборник примеров рабочего синтаксиса, никак не объясняющий принципы его построения (типа "мы запустили fuzzing, и вот эти строки nft схавало как корректные").

    У меня такое же ощущение про многие нынешние проекты.
    Спасибо за формулировку.

     
  • 2.8, Пряник (?), 16:01, 11/10/2023 [^] [^^] [^^^] [ответить]  
  • +1 +/
    официальный wiki читай, там охрененные примеры и всё понятно
     
     
  • 3.20, User (??), 10:27, 12/10/2023 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Для тех, кто путает "примеры" и "документацию" + хранит результаты своего "путанья" в вики - в аду отдельное озеро наморожено.
     
     
  • 4.40, Аноним (40), 15:02, 14/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Я называю это - How-to вместо документации
     
  • 2.11, Самый умный из вас (?), 17:17, 11/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Для старта может сумбурно, но как ref годится
     
  • 2.13, Аноним (13), 18:53, 11/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    В Windows брандмауэр настраивается, говорят.
     
  • 2.19, leap42 (ok), 07:18, 12/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > man nft весьма отрывочный

    Это 3500+ строк нудного перечисления всего подряд отрывочный? Ну-ну... А чего хотелось то?

     
  • 2.24, Менеджер Антона Алексеевича (?), 21:46, 12/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > man nft весьма отрывочный, а официальная wiki - просто сборник примеров рабочего синтаксиса

    Зачем ты лжёшь на опеннете? Мануал полностью описывает возможности nftables, на вики разжёваны основные операции, даны примеры и ссылки на дополнительные материалы. Если этого мало, то тебе в детский сад надо, там воспитательница поможет треугольник от квадрата отличить.

     

  • 1.6, Аноним (6), 12:49, 11/10/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    С детства пугал ужасный синтаксис iptables. А nft ништяк, декларативно, симпатично, продуманно. Одно из гениальнейших изобретений человечества.
     
     
  • 2.9, Аноним (9), 16:52, 11/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Где найти нормальное руководство?
     
     
  • 3.10, Аноним (-), 17:00, 11/10/2023 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 3.12, Аноним (6), 17:52, 11/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Лично я в интернете искал.
     
     
  • 4.14, Аноним (13), 18:55, 11/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Т.е. автор программки не выпустил?
     
     
  • 5.15, Аноним (15), 18:59, 11/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Выпустил, я сумел найти при помощи Google (сайт такой в интернете).
     
  • 3.41, Аноним. (?), 22:01, 14/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    А что там искать?

    Все, что нужно знать про структуру: https://wiki.nftables.org/wiki-nftables/index.php/Netfilter_hooks

    Правила описываються тут: https://wiki.nftables.org/wiki-nftables/index.php/Main_Page#Basic_operation

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

    Да и вообще он более консистентный.

     
  • 2.16, penetrator (?), 02:09, 12/10/2023 [^] [^^] [^^^] [ответить]  
  • +1 +/
    с той лишь разницей что правила iptables можно поправить в текстовом файле

    а ты будешь гондурасить в консоли

    поэтому они до сих пор используются в шапке и скорее всего еще долго будут

     
     
  • 3.18, leap42 (ok), 07:15, 12/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Шапка две версии назад (начиная с 8-ой) перешла на nftables:

    https://www.redhat.com/en/blog/using-nftables-red-hat-enterprise-linux-8

     
     
  • 4.26, penetrator (?), 23:36, 12/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > Шапка две версии назад (начиная с 8-ой) перешла на nftables:
    > https://www.redhat.com/en/blog/using-nftables-red-hat-enterprise-linux-8

    специально для тупых эта статья

    > как в iptables и ebtables, но транслирующих полученные правила в байткод nftables.

    так вот именно в шапке эти пакеты доступны и используются включая демоны iptables и ip6tables
      

     
     
  • 5.28, leap42 (ok), 06:08, 13/10/2023 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> Шапка две версии назад (начиная с 8-ой) перешла на nftables:
    >> https://www.redhat.com/en/blog/using-nftables-red-hat-enterprise-linux-8
    > специально для тупых эта статья
    >> как в iptables и ebtables, но транслирующих полученные правила в байткод nftables.
    > так вот именно в шапке эти пакеты доступны и используются включая демоны
    > iptables и ip6tables

    Для тупых лучше я объясню:

    1. Шапка перешла на nftables. Он сотоит из двух частей: ядерная (она делает 100% работы) и юзерспейсная (она только настраивает ядерную, а работает через API который может реализовать кто угодно и как угодно)
    2. Новый iptables - просто одна из нескольких морд/шкурок для nftables (убогая альтернатива nft, с усеченным функционалом, но совместимая со "шкриптами старпёров")
    3. iptables никогда не был демоном, раньше он был мордой ядерного iptables (который сейчас к счастью на помойке), теперь он - морда для nftables

     
     
  • 6.32, penetrator (?), 18:23, 13/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >> iptables и ip6tables
    > Для тупых лучше я объясню:
    > 1. Шапка перешла на nftables. Он сотоит из двух частей: ядерная (она
    > делает 100% работы) и юзерспейсная (она только настраивает ядерную, а работает
    > через API который может реализовать кто угодно и как угодно)
    > 2. Новый iptables - просто одна из нескольких морд/шкурок для nftables (убогая
    > альтернатива nft, с усеченным функционалом, но совместимая со "шкриптами старпёров")
    > 3. iptables никогда не был демоном, раньше он был мордой ядерного iptables
    > (который сейчас к счастью на помойке), теперь он - морда для
    > nftables

    какой же ты глупый кэп, даже прочитать не можешь, что люди пишут

    ● iptables.service - IPv4 firewall with iptables
       Loaded: loaded (/usr/lib/systemd/system/iptables.service; enabled; vendor preset: disabled)
       Active: active (exited) since Fri 2023-10-06 05:34:57 UTC; 1 weeks 0 days ago

    это кстати RHEL8 ^

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

     
     
  • 7.34, leap42 (ok), 04:54, 14/10/2023 [^] [^^] [^^^] [ответить]  
  • +1 +/
    О так, это вы! Другой то аргумент есть, я надеюсь? Что там в "iptables.service"? Там просто запуск утилиты (не демона, в linux firewall находится в ядре, ему демон не нужен) из новости. Ссылка прямо в ней, качайте. Что там внутри исходника iptables? Там внутри nft. Почему? Объясняю для чемпионов тупости в 10-ый раз:

    1. Есть два iptables: старый и новый.
    2. Фаерволом является только старый iptables
    3. Новый - это "переводчик" старых правил в формат nftables (примерно как wine на лету транслирует сисколы винды в сисколы линуха).
    4. 100% работы фаервола, я подчёркиваю 100% выполняет nftables
    5. нынешний iptables (и это ясно даже из этой кривой новости, всем кроме вас) просто переводит правила вида iptables в формат nftables, а потом загружает их в ядерную часть nftables

    > какой же ты глупый кэп, даже прочитать не можешь, что люди пишут

    Я могу прочесть код, а ещё я знаю штук 7 фаерволов, зачем мне читать бред чемпиона, который не способен понять даже того, что скрипт для автостарта чего-то с помощью systemd и фаервол в ядре, который фильтрует трафик - это две разные вещи?

    > ты обтекал доказывая что его вообще нет в системе

    Так кто обтекал, если его нет? Вот смотрите, есть ДВЕ разные программы с ОДНИМ названием. Первая - старый iptables, к счастью на помойке. В системах её уже нет. Вторая написана с нуля и занимается совсем другим делом.

    Debian+wine это НЕ Windows. Конвертер правил iptables->nftables это НЕ фаервол. Это блажь для идиотов.

     
     
  • 8.38, penetrator (?), 12:03, 14/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    вот мое оригинальное сообщение, а теперь скажи причем здесь вся эта хрень, что т... текст свёрнут, показать
     
     
  • 9.42, leap42 (ok), 07:19, 15/10/2023 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Дауны путают firewalld и nft уже несколько месяцев А правила nft всегда можно б... текст свёрнут, показать
     
     
  • 10.43, penetrator (?), 10:36, 15/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    не путай больше, не надо ... текст свёрнут, показать
     
  • 7.35, leap42 (ok), 05:13, 14/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > какой же ты глупый кэп, даже прочитать не можешь, что люди пишут

    Я наверное зря пишу как будто вам 5, это слишком оптимистично. Попробую ещё проще.

    1. Фаервол он в ядре. Обычно, он работает в виде модуля ядра.
    2. Юзерспейсные утилиты (iptables в виде iptables.service) фаерволом не являются. Они НЕ фильтруют трафик. Они ничего не сделают, если нужные модули ядра не загружены. Я повторю: они ничего не сделают если этого не сделает ядро, ведь фаервол он в ядре.
    3. Раньше фаерволом был ipchains, потом iptables, сейчас nftables. К ним шли соответсвующие юзерспейсные утилиты, "шкурки" для простой и удобной загрузки правил. "Шкурок" может быть сколько угодно (хоть 5 сразу), имена они могут иметь хоть какие, хоть ipchains, они НЕ НА ЧТО НЕ ВЛИЯЮТ. Что влияет на трафик, так это правила, которые уже загружены в ядро.
    4. Когда iptables отправился на помойку, его заменил nftables.
    5. Шляпа написала шкурку для nftables которая мимикрирует (посмотрите в словаре) под iptables. Зачем? Ну чтобы мерзотные простыни правил для iptables просто заработали и с nftables, в новых ядрах где никакого iptables вообще нет (обратная совместимость).

    Вы кем работаете, если не секрет? Мне сейчас немного жаль, что я не психиатр 😄

     
  • 7.44, Аноним (5), 12:55, 15/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > является бэкграунд процессом
    > Active: active (exited)

    Ну да, точно. Ага.

     
  • 3.21, Аноним (21), 10:42, 12/10/2023 [^] [^^] [^^^] [ответить]  
  • +1 +/
    О чем ты говоришь? Nftables можно поправить в текстовом файле тоже...
     
     
  • 4.25, penetrator (?), 23:34, 12/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > О чем ты говоришь? Nftables можно поправить в текстовом файле тоже...

    ну может пример подкинешь? какой файл надо править и как например открыть порт 1234 только для tcp для всех интерфейсов?

    вот поржем

     
     
  • 5.29, Аноним (29), 07:58, 13/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Вот файл:

    /etc/sysconfig/nftables.conf

    Вот пример:

    table inet filter {
            chain input {
                    type filter hook input priority 0; policy drop;
                    ...
                    udp dport 1234 accept
                    ...
            }
    }

    достаточно чтобы поржать?

     
     
  • 6.30, Аноним (29), 07:59, 13/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > быстрофикс:

    tcp dport 1234 accept

     
  • 6.31, penetrator (?), 18:10, 13/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    > drop;
    >            
    >     ...
    >            
    >     udp dport 1234 accept
    >            
    >     ...
    >         }
    > }
    > достаточно чтобы поржать?

    в RHEL8/9 и Fedora файл есть, но пустой, т.е. тебе нужен редактор который позволит это все с подстветкой синтексиса и форматированием, либо копипаста с мануалов, за форматирование отвечаешь сам

    в openSUSE файла нет вообще, не уверен, что он вообще подтянется, но допустим, вперед арлы )))

    iptables конфиге ты просто заходишь копируешь mc какую-нибудь строчку вроде
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
    и правишь 22 на 1234, и всё, iptables demon сконвертит все в байткод на уровне ядра

    ну как бы да, есть над чем поржать

    PS я не сомневался что кто-то это редактирует, я реально хотел сравнить варианты использования

     
     
  • 7.36, Аноним (36), 07:09, 14/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    так с nftables ты тоже можешь записать правила по одному, без группировки:

    add rule filter input ip protocol tcp  dport 1234 accept и все, так же в mc пишется, потом скармливается nft

     
     
  • 8.39, penetrator (?), 12:09, 14/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    несколько странно выглядит table inet filter add rule filter ко всем... текст свёрнут, показать
     
  • 2.23, PnD (??), 14:05, 12/10/2023 [^] [^^] [^^^] [ответить]  
  • +1 +/
    У меня для вас плохие новости. nft уже́ года 4 как больше не молодёжно.
    Новый-клёвый bpfilter — наше светлое будущее.
    Развивают, как я понял, те же чуваки что и nft. Поэтому, документация… Ну, вы поняли.
    Вот такого http://www.opennet.dev/docs/RUS/iptables/ больше не ожидается. Читайте исходники, они рулез ©(почти).
     

  • 1.17, Аноним. (?), 04:38, 12/10/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    К слову, а iptables можно использовать для добавления правил на уровни ingress/egress? И имеет ли он сеты ip с возможность, например, разрешить доступ к определенному ip на 30 минут?
     
     
  • 2.22, Пряник (?), 11:04, 12/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    На wikibooks есть супер статья по iptables. Но я бы посоветовал переходить на nftables.
     
     
  • 3.27, Аноним. (?), 00:07, 13/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > На wikibooks есть супер статья по iptables. Но я бы посоветовал переходить
    > на nftables.

    Его и использую. Просто интересно было.

     
  • 2.33, space (?), 21:15, 13/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    А в nft возможно?:
    1) в одну строку записать правило для исходящего трафика tcp 443 для конкретного browser?
    2) делать привязку правил к конкретному ядру CPU?
    3) приведите например полный конфиг для входящего и исходящего трафиков стандартного сервера, ну что бы сравнить читабельность конфига для сервера на котором запущены веб-сайты
    4) какую нагрузку на CPU делает nft по сравнению с iptables
     
     
  • 3.37, Аноним (36), 07:23, 14/10/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Текст новости: я что, какая-то шутка?
    Уже давно iptables работает по схеме:

    <новые правила iptables> --> iptables -(трансляция в новые правила nftables)-> nft --> nftables

    Поэтому iptables не может иметь большего функционала, чем nft.

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

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру