¿Deberías excluir el flujo SSH de una captura remota?
Una captura remota registra la conexión que transporta su propia salida. Decide cuánto excluir y nunca combines dos pruebas negativas de host con or.
Capturar en una máquina remota mientras observas la salida por la misma conexión es una medición autorreferencial, y distorsiona lo que estás midiendo. Cada paquete que imprimes viaja de vuelta por la sesión que se está capturando. Excluir ese flujo suele ser correcto, pero el tamaño de la exclusión es una decisión real. Demasiado estrecha y la captura se inunda a sí misma; demasiado amplia y la evidencia desaparece.
Por qué la captura se registra a sí misma
La captura ve la ruta de vuelta de su propia salida. Cada línea impresa en tu terminal se convierte en uno o más paquetes en la conexión de gestión, que el filtro luego empareja y vuelve a imprimir. El resultado es un bucle que crece hasta que el búfer o el enlace se rinden.
Por eso una captura escrita en un archivo se ve bien y la misma captura transmitida en vivo se vuelve inutilizable. El tráfico no es nuevo; lo creaste tú. Una captura de diez segundos puede producir más salida de la que el enlace puede soportar una vez que el bucle comienza.
Construye la exclusión como un solo grupo
Empieza por cómo el host remoto ve tu sesión, no por la dirección de tu terminal local. Un host de salto o un dispositivo NAT pueden hacer que el par sea algo que nunca escribiste, así que lee la dirección desde la propia visión del lado remoto. Luego agrupa el host y el puerto juntos para que la negación se aplique al par.
tcpdump -ni eth0 '(net 10.60.0.0/24) and not (host 203.0.113.77 and tcp port 2222)'Citar toda la expresión evita que el shell lea los paréntesis como sintaxis. Vuelve a imprimir el filtro antes de confiar en el resultado.
El filtro que parece correcto y lo conserva todo
El filtro equivocado es el que se lee de forma natural: el origen no es el par, o el destino no es el par. Para un paquete de tu estación de trabajo la primera prueba es verdadera; para la respuesta, la segunda. Unirlos con or conserva ambas direcciones, que es exactamente lo que querías descartar.
La lógica del filtro pcap da a and y or la misma precedencia y evalúa de izquierda a derecha, así que los paréntesis no son opcionales cuando los mezclas. Niega una expresión agrupada en lugar de combinar dos negaciones. Ese único cambio separa un filtro que funciona de una captura llena de tu propia escritura. referencia del filtro pcap es lo bastante corta para leerla en el terminal y vale la pena consultarla siempre que un filtro se comporte de forma inesperada.
Decide según lo que la captura debe demostrar
Decide cuánto excluir preguntando qué debe demostrar la captura. Si necesitas ver tráfico de aplicaciones hacia el mismo host, excluye solo el puerto SSH y acepta el ruido de otras sesiones. Si el host es irrelevante para la pregunta, excluirlo por completo es más simple y elimina toda una clase de paquetes autogenerados. Escribe la elección junto al archivo de captura, porque un filtro es una suposición sobre la evidencia.
La elección de interfaz decide lo que puedes ver. En el túnel ves el tráfico interno; en la interfaz física ves el transporte cifrado. Si los paquetes de gestión ya están ausentes en el punto que elegiste, ninguna exclusión arreglará una captura dirigida a la capa equivocada.