Folha de dicas de comando nftables

Ver Categorias

Folha de dicas de comando nftables

Compreendendo o Linux nftables Command #

O nftables command é uma poderosa ferramenta de firewall Linux que substitui iptables, ip6tables, arptables e ebtables. Com uma sintaxe unificada, nftables simplifica a filtragem de pacotes de rede, NAT e outras configurações avançadas de rede. O comando funciona com o nft utilitário, que se comunica com o subsistema netfilter do kernel para gerenciar regras de rede.

Sintaxe e estrutura básicas do nft Command #

O nft comando geralmente segue esta estrutura:

nft [OPTIONS] COMMAND

  • OPÇÕES: Bandeiras como -a (mostrar identificadores de regras) ou -j (saída em formato JSON).
  • COMANDO: A ação específica, como add, delete, list, ou flush, usado para gerenciar tabelas, cadeias ou regras.

nft Tabela de Cheatsheet de Comandos #

Command Descrição
nft list tables Listar todas as tabelas
nft add table inet filter Crie uma nova tabela chamada filter no inet família
nft delete table inet filter Excluir o filter mesa no inet família
nft list ruleset Listar todas as tabelas, cadeias e regras em um formato legível por humanos
nft flush ruleset Excluir todas as tabelas, cadeias e regras (limpar todo o conjunto de regras)
nft add chain inet filter input { type filter hook input priority 0; } Adicione um input cadeia para o filter mesa com input gancho
nft add rule inet filter input tcp dport 22 accept Aceitar tráfego SSH de entrada na porta 22
nft delete rule inet filter input handle <handle_number> Excluir uma regra no input cadeia especificando o identificador da regra
nft add rule inet filter forward counter Adicione uma regra de contador para forward cadeia de monitoramento de tráfego

Adicionando e gerenciando tabelas #

In nftables, tabelas são contêineres para cadeias e regras. Veja como criá-las e gerenciá-las:

Crie uma mesa #

nft add table inet my_table

Este comando cria uma nova tabela chamada my_table dentro do inet família, que suporta IPv4 e IPv6.

Excluir uma tabela #

nft delete table inet my_table

Exclui o my_table do inet família.

Correntes em nftables #

Cadeias são sequências de regras que definem como os pacotes são manipulados. Cada cadeia tem uma hook, que determina o estágio de filtragem de pacotes (por exemplo, input, output, ou forward).

Crie uma corrente #

nft add chain inet my_table my_chain { type filter hook input priority 0; }

Isso cria um input cadeia em my_table para filtrar pacotes com prioridade de 0.

Excluir uma cadeia #

nft delete chain inet my_table my_chain

Remove o my_chain da my_table.

Regras em nftables #

As regras especificam ações para pacotes que atendem a determinadas condições. Abaixo, exemplos de como adicionar, listar e excluir regras.

Adicionando regras #

nft add rule inet my_table my_chain tcp dport 80 accept

Esta regra permite tráfego na porta TCP 80 (HTTP).

Regras de Listagem #

nft list chain inet my_table my_chain

Exibe todas as regras em my_chain.

Excluindo Regras #

nft delete rule inet my_table my_chain handle <handle_number>

Remove uma regra especificando seu número de identificador, que pode ser mostrado por nft list chain inet my_table my_chain -a.

Exemplo nftables Configuração: Configuração básica de firewall #

Aqui está uma configuração básica de firewall que permite a entrada de SSH e HTTP/HTTPS, enquanto bloqueia todo o outro tráfego:

nft adicionar tabela inet filtro nft adicionar cadeia inet filtro entrada { tipo filtro gancho entrada prioridade 0\; política descartar\; } nft adicionar regra inet filtro entrada tcp dporta 22 aceitar # Permitir SSH nft adicionar regra inet filtro entrada tcp dporta 80 aceitar # Permitir HTTP nft adicionar regra inet filtro entrada tcp dporta 443 aceitar # Permitir HTTPS nft adicionar regra inet filtro entrada ct estado estabelecido, relacionado aceitar # Permitir conexões estabelecidas

Avançado: Regras com Estado e Rastreamento de Conexão #

nftables possui suporte integrado para rastreamento de conexão, permitindo que você gerencie regras com estado.

Exemplo: Permitir conexões relacionadas e estabelecidas #

nft add rule inet filter input ct state established,related accept

Isso permite pacotes de conexões já estabelecidas ou relacionadas a conexões existentes, ajudando a reduzir o reprocessamento desnecessário de conexões permitidas anteriormente.

Resumo #

O nftables O comando é uma ferramenta moderna e versátil para filtragem de pacotes de rede, fornecendo uma sintaxe unificada e opções flexíveis para gerenciar regras de firewall. Com nftables, você pode criar configurações de firewall eficientes e fáceis de manter, adequadas tanto para configurações simples quanto para ambientes corporativos complexos.

📄 Baixe este documento em formato PDF #

    E-MAIL: *

    Com tecnologia BetterDocs