LINUXCAMP_TG Telegram 369
nft: современный фаервол в Linux, который заменил iptables

nft — это утилита для управления nftables, новой подсистемой фаервола в ядре Linux. Она пришла на смену старым и запутанным инструментам: iptables, ip6tables, ebtables, arptables. Теперь всё делается в одной системе, единым языком, более эффективно и понятно.

Зачем нужен nft?

- Чтобы блокировать или разрешать трафик (фаервол).
- Для перенаправления портов (DNAT / SNAT).
- Чтобы настроить NAT, логирование, rate limiting и т.д.
- Управлять IPv4, IPv6, Ethernet, ARP в одной таблице.

Установка nft


На многих дистрибутивах nft уже предустановлен. Если нет:


# Debian / Ubuntu
sudo apt install nftables

# Red Hat / CentOS / Fedora
sudo dnf install nftables

# Arch Linux
sudo pacman -S nftables


Как работает nftables

В отличие от iptables, где каждая подсистема жила в своём мире (разные команды для IPv4, IPv6, ARP...), nftables работает с едиными таблицами и цепочками, и одним конфигом.

Простой пример через команды:


# Создаём таблицу и цепочку
sudo nft add table inet filter
sudo nft add chain inet filter input { type filter hook input priority 0 \; }

# Блокируем IP-адрес
sudo nft add rule inet filter input ip saddr 203.0.113.42 drop


Конфиг-файл "/etc/nftables.conf". В реальности, правила лучше описывать в конфиге, чтобы сохранять и применять при старте:


#!/usr/sbin/nft -f

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

# Блокируем IP
ip saddr 203.0.113.42 drop

# Разрешаем SSH
tcp dport 22 accept
}
}


Применить файл:


sudo nft -f /etc/nftables.conf


И включить автозапуск:


sudo systemctl enable nftables
sudo systemctl start nftables


Как проверить, что правила работают

Посмотреть текущие правила:


sudo nft list ruleset


Или только одну таблицу:


sudo nft list table inet filter


Вывод будет в читабельной иерархии, например:


table inet filter {
chain input {
type filter hook input priority 0; policy accept;
ip saddr 203.0.113.42 drop
tcp dport 22 accept
}
}


Чтобы перезаписать все старые правила, используйте:


sudo nft flush ruleset


Что делает nft круче iptables

- Одна система вместо четырёх: больше не нужно думать iptables vs ip6tables.
- Наборы (sets): можно сразу заблокировать десятки IP без повторений.
- Списки и словари: условная логика в правилах.
- Rate limiting: ограничение по частоте (например, не более 10 пакетов/сек).
- Логирование прямо в правило: встроенная поддержка log.
- Конфиги, читаемые человеком, пригодные для версионирования.
- Высокая производительность: меньше затрат ядра, быстрее работает.

Совет

Если вы раньше использовали iptables, не стоит мешать его правила с nftables. Лучше отключить iptables и перейти на nft полностью:


sudo systemctl disable iptables
sudo systemctl disable ip6tables


LinuxCamp | #utils
👍23🔥84🙈3🤣1



tgoop.com/linuxcamp_tg/369
Create:
Last Update:

nft: современный фаервол в Linux, который заменил iptables

nft — это утилита для управления nftables, новой подсистемой фаервола в ядре Linux. Она пришла на смену старым и запутанным инструментам: iptables, ip6tables, ebtables, arptables. Теперь всё делается в одной системе, единым языком, более эффективно и понятно.

Зачем нужен nft?

- Чтобы блокировать или разрешать трафик (фаервол).
- Для перенаправления портов (DNAT / SNAT).
- Чтобы настроить NAT, логирование, rate limiting и т.д.
- Управлять IPv4, IPv6, Ethernet, ARP в одной таблице.

Установка nft


На многих дистрибутивах nft уже предустановлен. Если нет:


# Debian / Ubuntu
sudo apt install nftables

# Red Hat / CentOS / Fedora
sudo dnf install nftables

# Arch Linux
sudo pacman -S nftables


Как работает nftables

В отличие от iptables, где каждая подсистема жила в своём мире (разные команды для IPv4, IPv6, ARP...), nftables работает с едиными таблицами и цепочками, и одним конфигом.

Простой пример через команды:


# Создаём таблицу и цепочку
sudo nft add table inet filter
sudo nft add chain inet filter input { type filter hook input priority 0 \; }

# Блокируем IP-адрес
sudo nft add rule inet filter input ip saddr 203.0.113.42 drop


Конфиг-файл "/etc/nftables.conf". В реальности, правила лучше описывать в конфиге, чтобы сохранять и применять при старте:


#!/usr/sbin/nft -f

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

# Блокируем IP
ip saddr 203.0.113.42 drop

# Разрешаем SSH
tcp dport 22 accept
}
}


Применить файл:


sudo nft -f /etc/nftables.conf


И включить автозапуск:


sudo systemctl enable nftables
sudo systemctl start nftables


Как проверить, что правила работают

Посмотреть текущие правила:


sudo nft list ruleset


Или только одну таблицу:


sudo nft list table inet filter


Вывод будет в читабельной иерархии, например:


table inet filter {
chain input {
type filter hook input priority 0; policy accept;
ip saddr 203.0.113.42 drop
tcp dport 22 accept
}
}


Чтобы перезаписать все старые правила, используйте:


sudo nft flush ruleset


Что делает nft круче iptables

- Одна система вместо четырёх: больше не нужно думать iptables vs ip6tables.
- Наборы (sets): можно сразу заблокировать десятки IP без повторений.
- Списки и словари: условная логика в правилах.
- Rate limiting: ограничение по частоте (например, не более 10 пакетов/сек).
- Логирование прямо в правило: встроенная поддержка log.
- Конфиги, читаемые человеком, пригодные для версионирования.
- Высокая производительность: меньше затрат ядра, быстрее работает.

Совет

Если вы раньше использовали iptables, не стоит мешать его правила с nftables. Лучше отключить iptables и перейти на nft полностью:


sudo systemctl disable iptables
sudo systemctl disable ip6tables


LinuxCamp | #utils

BY LinuxCamp | DevOps


Share with your friend now:
tgoop.com/linuxcamp_tg/369

View MORE
Open in Telegram


Telegram News

Date: |

How to create a business channel on Telegram? (Tutorial) Avoid compound hashtags that consist of several words. If you have a hashtag like #marketingnewsinusa, split it into smaller hashtags: “#marketing, #news, #usa. “[The defendant] could not shift his criminal liability,” Hui said. How to create a business channel on Telegram? (Tutorial) It’s yet another bloodbath on Satoshi Street. As of press time, Bitcoin (BTC) and the broader cryptocurrency market have corrected another 10 percent amid a massive sell-off. Ethereum (EHT) is down a staggering 15 percent moving close to $1,000, down more than 42 percent on the weekly chart.
from us


Telegram LinuxCamp | DevOps
FROM American