Projetos Netfilter: Iptables e Nftables

Aula 6 · GNU/Linux para Redes de Computadores

A configuração utilizando NFTables segue uma lógica semelhante à do iptables, mas com algumas diferenças importantes. Em primeiro lugar, é necessário criar as tabelas e cadeias conforme desejado antes de adicionar regras. Por exemplo, para criar a tabela "filter" e a cadeia "input", você usaria o comando `nft add table ip filter` seguido por `nft add chain ip filter input {...}`.

NFTables possui comandos mais intuitivos como `jump`, que permite saltar para outra cadeia em tempo de execução. Também há o módulo `limit`, que pode aplicar regras baseadas em limites de tempo e tamanho, além de outras condições.

As regras podem ser aplicadas sobre interfaces de rede por nome ou índice, protocolos, tamanhos de pacote em bytes, marcações específicas nos cabeçalhos dos pacotes, prioridades e outros campos relevantes.

Neste exemplo, criamos uma tabela "filter" e adicionamos a cadeia "input", estabelecendo sua prioridade para 0. Em seguida, adicionamos regras para NAT pré-revolting (pre-routing) e permissão de tráfego na rota forward da rede.

A diferença crucial é que com NFTables você tem mais flexibilidade em manipular campos específicos dos pacotes através de marcações personalizadas, além de poder trabalhar diretamente com diferentes camadas da pilha TCP/IP. Isso permite configurações muito mais avançadas e customizáveis comparado ao iptables.

Ao utilizar NFTables, você pode definir as regras exatamente como deseja sem depender de módulos adicionais ou configurações complexas pré-existentes.

Conceitos que esta aula cobre nas trilhas de conhecimento:

Linux SysAdmin
Firewall (firewalld/iptables/nftables)Firewall (nftables/iptables)

Entre na sua conta para perguntar sobre esta aula. Fazer login.

Voltar ao curso