Descripción:

El comando tcpdump es una herramienta de captura y análisis de tráfico de red en tiempo real. Permite inspeccionar paquetes que pasan por una interfaz de red y aplicar filtros avanzados para diagnosticar problemas, analizar seguridad o depurar servicios.

Internamente utiliza la librería libpcap y trabaja a nivel de paquete, no de aplicación.

Instalación:

# Debian / Ubuntu
sudo apt update
sudo apt install tcpdump

# Fedora / RHEL
sudo dnf install tcpdump

# Arch Linux
sudo pacman -S tcpdump

# Verificar versión
tcpdump --version

Nota: requiere privilegios de superusuario (sudo) para capturar tráfico.

Atributos y Parámetros:

Atributo Descripción
-i INTERFAZ Selecciona la interfaz de red (eth0, wlan0, any, etc.).
-n No resuelve nombres DNS (mejora rendimiento).
-nn No resuelve DNS ni nombres de puertos.
-v, -vv, -vvv Aumenta el nivel de detalle en la salida.
-c NUM Captura un número limitado de paquetes.
-w archivo.pcap Guarda la captura en archivo para analizar posteriormente.
-r archivo.pcap Lee una captura previamente guardada.
-A Muestra el contenido del paquete en formato ASCII.
-X Muestra contenido en formato hexadecimal y ASCII.

Ejemplos de Uso:

  1. Capturar tráfico en una interfaz específica:
sudo tcpdump -i eth0

Captura todo el tráfico que pasa por la interfaz eth0. Útil para una visión general rápida.

  1. Capturar en todas las interfaces:
sudo tcpdump -i any

Escucha en todas las interfaces del sistema. Ideal en servidores con varias NICs.

  1. Ver si un puerto está recibiendo tráfico (ejemplo: API en puerto 3000):
sudo tcpdump -i any port 3000 -nn

Permite comprobar si realmente están llegando peticiones al servicio.

  1. Detectar intentos de conexión SSH:
sudo tcpdump -i eth0 port 22 -nn

Muy útil para detectar ataques de fuerza bruta o escaneos.

  1. Capturar solo paquetes TCP:
sudo tcpdump -i eth0 tcp

Filtra exclusivamente tráfico TCP.

  1. Capturar solo paquetes UDP (ejemplo DNS):
sudo tcpdump -i eth0 udp port 53

Permite analizar consultas DNS.

  1. Filtrar por IP origen:
sudo tcpdump -i eth0 src host 192.168.1.10

Muestra solo tráfico generado por esa IP.

  1. Filtrar por IP destino:
sudo tcpdump -i eth0 dst host 192.168.1.50

Muestra solo tráfico dirigido a esa IP.

  1. Mostrar solo paquetes SYN (inicio de conexión TCP):
sudo tcpdump -i eth0 'tcp[tcpflags] & tcp-syn != 0'

Permite detectar intentos de conexión o escaneos.

  1. Detectar escaneos de puertos:
sudo tcpdump -i eth0 'tcp[tcpflags] & (tcp-syn|tcp-fin) != 0'

Captura paquetes sospechosos utilizados en escaneos avanzados.

  1. Ver contenido HTTP en texto plano:
sudo tcpdump -i eth0 port 80 -A

Muestra cabeceras HTTP y contenido en ASCII.

  1. Mostrar en formato hexadecimal y ASCII:
sudo tcpdump -i eth0 -X

Útil para inspección técnica de paquetes.

  1. Capturar solo 20 paquetes y salir:
sudo tcpdump -i eth0 -c 20

Evita capturas infinitas en servidores en producción.

  1. Guardar captura para analizar posteriormente:
sudo tcpdump -i eth0 -w captura.pcap

Permite abrir el archivo en Wireshark para análisis avanzado.

  1. Leer una captura previamente guardada:
tcpdump -r captura.pcap

Analiza un archivo capturado anteriormente sin necesidad de capturar de nuevo.

Categoría:

Redes, Diagnóstico, Seguridad, Análisis de tráfico.

Distribuciones Compatibles:

Disponible en la mayoría de distribuciones Linux como Ubuntu, Debian, Fedora, RHEL, Arch Linux y otras.

Alternativas:

  • Wireshark: Analizador de tráfico con interfaz gráfica avanzada.
  • tshark: Versión en consola de Wireshark.
  • ngrep: Filtrado de tráfico similar a grep.
  • ss: Visualiza conexiones activas (no captura paquetes).

Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Categoría:
Nivel:
Impacto:

archivos arranque backup buscar completa conexiones configuración copiar copias de seguridad cortafuegos cpu deshabilitar disco escaneo espacio espacio ocupado filtrar firewall habilitar herramienta incremental inicio interfaz lectura listar log mantenimiento monitorización monousuario patrones procesos pruebas ram recursos red redes seguridad servicios sincronización sockets tcp texto udp uso ver

  • mkdir

    Descripción El comando mkdir (Make Directory) se utiliza para crear directorios en sistemas Linux y Unix. Es una de las herramientas más básicas y utilizadas…

  • hostnamectl

    Descripción El comando hostnamectl permite consultar y modificar el nombre del equipo (hostname) y otra información relacionada con el sistema en distribuciones Linux que utilizan…

  • uname

    Descripción El comando uname (Unix Name) se utiliza para mostrar información sobre el sistema operativo y el kernel en ejecución. Es una herramienta sencilla pero…

  • ack

    Descripción El comando ack es una herramienta de búsqueda de texto diseñada especialmente para desarrolladores y administradores de sistemas. Su objetivo es encontrar cadenas de…

  • find

    Descripción: El comando find se utiliza para buscar archivos y directorios dentro del sistema de archivos en Linux. Permite localizar elementos por nombre, tipo, tamaño,…

  • journalctl

    Descripción: El comando journalctl es la herramienta para consultar los registros del sistema gestionados por systemd-journald. Permite visualizar logs del sistema operativo, servicios, kernel, arranques…

  • nmap

    Descripción: El comando nmap (Network Mapper) es una herramienta avanzada para descubrimiento de hosts y escaneo de puertos. Permite identificar equipos activos en una red,…

  • ip

    Descripción: El comando ip (del paquete iproute2) es la herramienta moderna de Linux para administrar y diagnosticar la red: interfaces, direcciones IP, rutas, tabla ARP/vecinos…

  • tcpdump

    Descripción: El comando tcpdump es una herramienta de captura y análisis de tráfico de red en tiempo real. Permite inspeccionar paquetes que pasan por una…

  • top

    Herramienta de monitorización del sistema en tiempo real que muestra información sobre los procesos que se están ejecutando en un sistema Unix o Linux.