NFtables – O Sucessor do IPtables (no próximo kernel)



         Atualmente em desenvolvimento (inicio em março de 2009), nftables é o projeto (do netfilter) que visa substituir o iptables, ip6tables, arptables e ebtables.

Será a 4ª geração de filtro de pacote no kernel linux.

Ele usa uma nova syntax, diferente da usada pelo iptables e dos demais “tables”, porém fornece uma camada de compatibilidade que permite que seja executado syntax na estrutura do iptables, por exemplo. Um utilitário em linha de comando que consegue adicionar ao nftables regras escritas através da “linguagem” do iptables.

Esse projeto prevê uma nova estrutura de filtragem de pacotes (trazendo melhorias e otimizações junto ao kernel), um novo utilitário para usuário e também uma camada de compatibilidade para o iptables e ip6tables.

Principais Características:


  • O usuário cria as regras e as armazena (no lado user) através do utilitário nftables, após elas são compiladas num pseudo-estado e transferidas (Através da API nftables do Netlink,) para o lado do kernel. A grosso modo, a idéia por trás nftables é semelhante ao do Berkeley Packet Filter ( BPF )..
  • Pesquisas rápidas através de estruturas de dados de desempenho : a nova sintaxe permite que você organize conjuntos de regras de uma maneira que prove muito mais desempenho ao contrário das políticas de filtragem listadas linearmente (caso do iptables). Permite que você use mapeamentos de ação baseada em conjunto, ou seja, para um elemento correspondente no conjunto, emitir a ação especificada pelo usuário.
  • Reduzir a quantidade de código no kernel. Pode expressar o seletor de pacotes para todos os protocolos existentes, utilizando o conjunto de instruções fornecido pelo nftables gravados no pseudo-estado da maquina (kernel, bytecode). Isso significa que não precisa especificar uma extensão no lado do kernel para cada protocolo que deseja, por exemplo. Como efeito colateral, provavelmente não será preciso atualizar seu kernel para obter novos recursos, uma vez que foi concebido para manter a maior parte da lógica no espaço do usuário, não do kernel (quam transfere para o kernel é a API nftables, previamente compilada no lado do usuário).
  • Interface unificada para substituir utilitários iptables/ip6tables/arptables/ebtables . Assim, será capaz de se livrar completamente de toda a replicação de código existente no lado do kernel e no lado do usuário.

Existe um howto (inglês) mostrando como instalar o nftables, criação de regras básicas, NAT, mapeamento: neste link

Estou traduzindo o guia acima e testando num ambiente virtualizado para testes e postar maiores detalhes...

Já está nos planos para ser inserido no kernel de algumas distribuições.

Ao que está sendo divulgado, no kernel oficial (do kernel.org), o nftables estará inserido no kernel 3.13 (estamos no 3.12-rc7)

Alguns links – referência:
http://git.kernel.org/cgit/linux/kernel/git/pablo/nftables.git
http://git.netfilter.org/nftables/
http://git.netfilter.org/iptables-nftables/

Fonte: netfilter.org

Mais vistos no mês:

As melhores distribuições Linux para 2017

Teste de Performance de Rede com Iperf

TuxMath - Tux, do Comando da Matemática. Ensino e diversão a crianças.

Aula #14 - Os sistemas de arquivos ext2/ext3/ext4

Modelo Firewall Completo em Iptables para pequena rede/office

DHCP - Guia Completo

OPNsense - Firewall Open Source

SSD no linux

Administração de sistema e Deploys: Ansible, Chef, Fabric, Puppet ou Salt?

Oracle Linux 7.0 Server com Xfce - Instalação e configurações iniciais