6.9.3. Pacotes de monitoramento que correspondem a uma regra existente
O recurso de rastreamento em nftables
em combinação com o comando nft monitor
permite que os administradores exibam pacotes que correspondem a uma regra. O procedimento descreve como permitir o rastreamento de uma regra, bem como o monitoramento de pacotes que correspondam a esta regra.
Pré-requisitos
- A regra à qual se deseja acrescentar o contador existe.
Procedimento
Mostrar as regras da corrente incluindo seus cabos:
# nft --handle list chain inet example_table example_chain table inet example_table { chain example_chain { # handle 1 type filter hook input priority filter; policy accept; tcp dport ssh accept # handle 4 } }
Adicione o recurso de rastreamento substituindo a regra, mas com os parâmetros
meta nftrace set 1
. O exemplo a seguir substitui a regra exibida na etapa anterior e permite o rastreamento:# nft replace rule inet example_table example_chain handle 4 tcp dport 22 meta nftrace set 1 accept
Use o comando
nft monitor
para exibir o rastreamento. O seguinte exemplo filtra a saída do comando para exibir somente as entradas que contenhaminet example_table example_chain
:# nft monitor | grep "inet example_table example_chain" trace id 3c5eb15e inet example_table example_chain packet: iif "enp1s0" ether saddr 52:54:00:17:ff:e4 ether daddr 52:54:00:72:2f:6e ip saddr 192.0.2.1 ip daddr 192.0.2.2 ip dscp cs0 ip ecn not-ect ip ttl 64 ip id 49710 ip protocol tcp ip length 60 tcp sport 56728 tcp dport ssh tcp flags == syn tcp window 64240 trace id 3c5eb15e inet example_table example_chain rule tcp dport ssh nftrace set 1 accept (verdict accept) ...
AtençãoDependendo do número de regras com rastreamento habilitado e da quantidade de tráfego correspondente, o comando
nft monitor
pode exibir uma grande quantidade de resultados. Usegrep
ou outras utilidades para filtrar a saída.