В Ubuntu 20.10 планують перейти з iptables на nftables

Слідом за Fedora и Debian розробники Ubuntu розглядають можливість переходу на використання за промовчанням пакетного фільтра nftables.
Для збереження зворотної сумісності пропонується використовувати пакет iptables-nft, що надає утиліти з тим же синтаксисом командного рядка, як і в iptables, але транслює отримані правила в байткод nf_tables. Зміну планується включити до складу осіннього випуску Ubuntu 20.10.

Це друга спроба переходу Ubuntu на nftables. Першу спробу було зроблено минулого року, але було відхилено через несумісність з інструментарієм LXD. Тепер у LXD вже є вбудована підтримка nftables і може працювати з новим бекендом для фільтрації пакетів. Для користувачів, яким недостатньо прошарку для забезпечення сумісності, залишена можливість встановлення класичних утиліт iptables, ip6tables, arptables та ebtables зі старим бекендом.

Нагадаємо, що в пакетному фільтрі nftables уніфіковано інтерфейси фільтрації пакетів для IPv4, IPv6, ARP та мережевих мостів. У пакет nftables входять компоненти пакетного фільтра, що працюють у просторі користувача, у той час як на рівні ядра роботу забезпечує підсистема nf_tables, що входить до складу ядра Linux, починаючи з випуску 3.13. На рівні ядра надається лише загальний інтерфейс, який залежить від конкретного протоколу і надає базові функції вилучення даних із пакетів, виконання операцій із даними та управління потоком.

Безпосередньо правила фільтрації та специфічні для протоколів обробники компілюються в байткод у просторі користувача, після чого даний байткод завантажується в ядро ​​за допомогою інтерфейсу Netlink та виконується в ядрі у спеціальній віртуальній машині, що нагадує BPF (Berkeley Packet Filters). Подібний підхід дозволяє значно скоротити розмір коду фільтрації, що працює на рівні ядра і винести всі функції аналізу правил і логіки роботи з протоколами в простір користувача.

Джерело: opennet.ru

Додати коментар або відгук