6.9.3. Supervisión de los paquetes que coinciden con una regla existente
La función de rastreo en nftables
en combinación con el comando nft monitor
permite a los administradores mostrar los paquetes que coinciden con una regla. El procedimiento describe cómo habilitar el rastreo para una regla, así como la supervisión de los paquetes que coinciden con esta regla.
Requisitos previos
- La regla a la que se quiere añadir el contador existe.
Procedimiento
Muestra las reglas de la cadena incluyendo sus asas:
# 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 } }
Añada la función de rastreo sustituyendo la regla pero con los parámetros de
meta nftrace set 1
. El siguiente ejemplo reemplaza la regla mostrada en el paso anterior y habilita el rastreo:# nft replace rule inet example_table example_chain handle 4 tcp dport 22 meta nftrace set 1 accept
Utilice el comando
nft monitor
para mostrar el rastreo. El siguiente ejemplo filtra la salida del comando para mostrar sólo las entradas que contieneninet 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) ...
AvisoDependiendo del número de reglas con el rastreo activado y de la cantidad de tráfico que coincida, el comando
nft monitor
puede mostrar una gran cantidad de salida. Utilicegrep
u otras utilidades para filtrar la salida.