The OpenNET Project / Index page

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



"Выпуск пакетного фильтра nftables 1.0.7"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск пакетного фильтра nftables 1.0.7"  +/
Сообщение от opennews (??), 14-Мрт-23, 12:11 
Опубликован выпуск пакетного фильтра nftables 1.0.7, унифицирующего интерфейсы фильтрации пакетов для IPv4, IPv6, ARP и сетевых мостов (нацелен на замену iptables, ip6table, arptables и ebtables). В пакет nftables входят компоненты пакетного фильтра, работающие в пространстве пользователя, в то время как на уровне ядра работу обеспечивает подсистема nf_tables, входящая в состав ядра Linux начиная с выпуска 3.13. На уровне ядра предоставляется лишь общий интерфейс, не зависящий от конкретного протокола и предоставляющий базовые функции извлечения данных из пакетов, выполнения операций с данными и управления потоком...

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

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

17. Сообщение от Аноним (17), 14-Мрт-23, 14:01   +/
Лучший пакетный фильтр. Хотя системы надо проектировать так, чтобы nftables/iptables были опциональными = чтобы система не перестала быть защищенной, если эти фильтры внезапно отключить.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #20

20. Сообщение от Аноним (20), 14-Мрт-23, 14:06   +2 +/
Лучший?

Уже 10 лет у них просят string/hex match, в ответ: используйте iptables.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17 Ответы: #21, #23, #30

21. Сообщение от Аноним (21), 14-Мрт-23, 14:10   +/
нет регулярок? пичалько
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #63

23. Сообщение от Аноним (17), 14-Мрт-23, 14:16   +/
фильтровать айпишники по "регуляркам и строкам"? вы там с дуба рухнули? уже есть маски
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #26

25. Сообщение от Аноним (-), 14-Мрт-23, 14:35   +/
Изучаю базовые команды линуха. Уже взялся тыкать iptables, но тут узнал, что это легаси и ненужно. А собственно чем nftables лучше? Ну кроме того, что iptables выпиливают из свежих дистров.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #28, #31, #33, #37, #38

26. Сообщение от Аноним (26), 14-Мрт-23, 15:17   –1 +/
Причём тут IP?!

Где я написал хоть слово про IP?!

Мне содержимое пакетов надо анализировать и на основе этого drop.

И нет, я не ISP, мне это для домашней машины надо.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #27, #32

27. Сообщение от Аноним (17), 14-Мрт-23, 15:30   +/
и что же ты там по сырому потенциально зашифрованному телу пакета собрался фильтровать?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #36

28. Сообщение от Аноним (28), 14-Мрт-23, 15:34   +/
> что iptables выпиливают из свежих дистров

А в замен ничего не впиливают?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

29. Сообщение от Аноним (30), 14-Мрт-23, 15:35   +/
>выполняется в ядре в специальной виртуальной машине, напоминающей BPF (Berkeley Packet Filters).

eBPF?

Ответить | Правка | Наверх | Cообщить модератору

30. Сообщение от Аноним (30), 14-Мрт-23, 15:37   –1 +/
>используйте eBPF

fixed.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20

31. Сообщение от pfg21 (ok), 14-Мрт-23, 15:44   +/
по теме "чем лучше" написаны кучи статей, но сложных и мудреных.  
iptables остается до поры до времени, как один из интерфейсов управления, его правила компилируются в "nftables-байткод" и отдаются в ядро на исполнение.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

32. Сообщение от pfg21 (ok), 14-Мрт-23, 15:45   +2 +/
пишешь нфтейблес "пакеты перенаправлять в мою программу" и там онализируешь.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #35

33. Сообщение от Аноним (33), 14-Мрт-23, 15:57   +/
iptables сейчас работает через nftables.
К тому же он проще, если его действительно удаляют из дистрибутивов то очень плохо
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

35. Сообщение от Аноним (26), 14-Мрт-23, 16:13   –5 +/
Песец.

А вы мне подарите EPYC на 96 ядер, чтобы гонять трафик из ядра в userspace и обратно для потока в 500Mbit?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #32 Ответы: #39, #41, #47, #56

36. Сообщение от Аноним (26), 14-Мрт-23, 16:14   +/
Аноним, у тебя галлюцинации?

Где ты увидел слово "зашифрованный" трафик?

Сначала ты нёс про IP, теперь про шифрование, дальше что?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27 Ответы: #46

37. Сообщение от Аноним (26), 14-Мрт-23, 16:15   +1 +/
Лучше, ХЗ.

Сложнее на порядок и синтаксис ад - да, несомненно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #52, #58

38. Сообщение от Аноним (26), 14-Мрт-23, 16:18   +/
iptables никуда не денутся ещё ... всегда будут, просто потому что userspace API Линус не ломает, точка.

Изучайте, используйте.

Другой вопрос, что в новомодных компаниях их местные senior devops могут решить, что nfilters - будущее, и вы обязаны их использовать.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #43

39. Сообщение от Аноним (39), 14-Мрт-23, 16:28   +2 +/
Значит просто, без задней мысли, пишешь нфтейблес "пакеты перенаправлять в мой модуль ядра" и там анализируешь
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35

40. Сообщение от лютый ж.... (?), 14-Мрт-23, 17:17   +1 +/
не взлетит, пока доцкеры сидят на iptables
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #42

41. Сообщение от Аноним (41), 14-Мрт-23, 19:11   +/
50 мбайт/с? 96 ядер ??? Такой поток пишется на жесткий диск 20 летней свежести одним ядром тех же времен
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35

42. Сообщение от Аноним (42), 14-Мрт-23, 19:30   +/
Давно уже не использую iptables и вырубил его использование у докера вообще, только мешается.

Вот все достаточно просто:

root@localhost:~# cat /etc/nftables.conf
#!/usr/sbin/nft -f

flush ruleset

table inet filter {
        chain input {
                type filter hook input priority 0; policy drop;

                ct state invalid counter drop comment "early drop of invalid packets"

                ct state {established, related} accept comment "established, related"

                iif lo accept comment "accept loopback"

                ip saddr 192.168.0.0/16 accept comment "accept private networks"
                ip saddr 172.16.0.0/12 accept comment "accept private networks"
                ip saddr 10.0.0.0/8 accept comment "accept private networks"

                ip protocol icmp accept comment "accept all ICMP types"

                #log prefix "Dropped: " flags all drop comment "dropped packets logger"
                #log prefix "Rejected: " flags all reject comment "rejected packets logger"

                counter comment "count dropped packets"
        }
        chain forward {
                type filter hook forward priority 0; policy accept;
                counter jump docker-user
                counter jump docker-isolation-stage-1
                oifname "docker0" ct state related,established counter accept
                oifname "docker0" counter jump docker
                iifname "docker0" oifname != "docker0" counter accept
                iifname "docker0" oifname "docker0" counter accept
        }
        chain output {
                type filter hook output priority 0; policy accept;
        }

        chain docker {
        }
        chain docker-isolation-stage-1 {
                iifname "docker0" oifname != "docker0" counter jump docker-isolation-stage-2
                counter return
        }
        chain docker-isolation-stage-2 {
                oifname "docker0" counter drop
                counter return
        }
        chain docker-user {
                counter return
        }

}

table ip nat {
        chain prerouting { type nat hook prerouting priority -100; policy accept;
                fib daddr type local counter jump docker
        }
        chain input { type nat hook input priority 100; policy accept; }
        chain output { type nat hook output priority -100; policy accept;
                ip daddr != 127.0.0.0/8 fib daddr type local counter jump docker
        }
        chain postrouting { type nat hook postrouting priority 100; policy accept;
                oifname != "docker0" ip saddr 172.17.0.0/16 counter masquerade
        }
        chain docker{
                iifname "docker0" counter return
        }
}

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40 Ответы: #64

43. Сообщение от llolik (ok), 14-Мрт-23, 19:38   +/
iptables - это не API ядра, это утилиты. В ядре только, собственно, сам фильтр - netfilter. Так что выкинуть могут.

> и вы обязаны их использовать

Ну, не утверждаю про обязаны, но nftables, как-минимум ИМХО, сильно читабельней.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38

44. Сообщение от Анонимemail (44), 14-Мрт-23, 19:48   +/
Помнится мне обещали что ip4 скоро кончится, зато ip6 который мне присвоят не требует настройки брандмауэра!
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #50, #55

46. Сообщение от Аноним (46), 14-Мрт-23, 20:29   +1 +/
Приведи юзкейс уже для такого.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36 Ответы: #51, #61

47. Сообщение от Аноним (46), 14-Мрт-23, 20:30   +2 +/
Чел, чем ты там занимаешься?!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35 Ответы: #49

49. Сообщение от bergentroll (ok), 14-Мрт-23, 23:32   +2 +/
Комменты пишет же
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47

50. Сообщение от Аноним (50), 15-Мрт-23, 06:17   +1 +/
Наоборот же :). Не меньше, а больше брандмауэра, из-за отсутствия NAT.

Но ipv6 всё равно отличная вещь, там, где он есть.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #53, #57

51. Сообщение от _Kuzmich (ok), 15-Мрт-23, 08:27   +1 +/
Непонятно почему человека заминусили.
У меня такой юзкейс: в сторону бакэнда делаешь каунт на GET, при зашкаливании пишешь в сет. По этому сету в мир уменьшаешь размер окна в 0. Помогает от ddos школьников.
Как такое сделать на nftables пока не знаю, поделитесь, кто в курсе.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46

52. Сообщение от 1 (??), 15-Мрт-23, 09:09   +/
Я голосую за приведения синтаксиса nftables к синтаксису rust. И все будут довольны.
Опять же безопастностЪ !
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37

53. Сообщение от 1 (??), 15-Мрт-23, 09:10   +3 +/
И ещё более отличная, там где его нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #50

54. Сообщение от ChatGPT (?), 15-Мрт-23, 10:57   +2 +/
Я не осилил, в отличие от iptables. Это надо отдельно курс пройти по разработке конфигураций.
Ответить | Правка | Наверх | Cообщить модератору

55. Сообщение от Аноним (56), 15-Мрт-23, 12:11   +/
>ip6 который мне присвоят не требует настройки брандмауэра!

1. IPv6 в РФ не присвоят, РКН против.
2. Тебе безбожно врали.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #59

56. Сообщение от Аноним (56), 15-Мрт-23, 12:21   +/
Тебе лучше на чём-то из этого https://www.xilinx.com/products/boards-and-kits/alveo.html фильтровать. Дешевле выйдет, чем 96 ядер.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35

57. Сообщение от Аноним (56), 15-Мрт-23, 13:17   +/
В Linux запилили NAT для IPv6.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #50 Ответы: #62

58. Сообщение от Аноним (56), 15-Мрт-23, 13:22   +/
Что в нём адово? Синтаксис наподобие iproute2.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37

59. Сообщение от Аноним (59), 15-Мрт-23, 15:01   +/
> 1. IPv6 в РФ не присвоят, РКН против.

Каво? У меня пров /56 сети раздаёт... Хошь подключай.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55

61. Сообщение от saa (?), 19-Мрт-23, 18:23   +/
iptables -I INPUT -p tcp --sport 80 -m string --string "Location: http://warning.rt.ru/" --algo bm -j DROP
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46

62. Сообщение от saa (?), 19-Мрт-23, 18:26   +/
это не тот нат, что в ип4.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57

63. Сообщение от Аноним (63), 20-Мрт-23, 01:30   +/
Регулярки - тяжесть.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21

64. Сообщение от Аноним (63), 20-Мрт-23, 01:33   +/
Волшебные номера вхардкожены, и - имена интерфейсов. А тогда - не так всё просто.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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