12 comandos tcpdump una herramienta de sniffer de red

12 comandos tcpdump una herramienta de sniffer de red

En nuestro artículo anterior, hemos visto 20 comandos NetStat (NetStat ahora reemplazado por el comando SS) para monitorear o administrar una red Linux. Esta es nuestra otra serie de herramienta de sniffer de paquetes en curso llamada tcpdump. Aquí, le vamos a mostrar cómo instalar tcpdump y luego discutimos y cubrimos algunos comandos útiles con sus ejemplos prácticos.

Ejemplos de comando Linux tcpdump

tcpdump es una herramienta de analizador de paquetes o paquetes de línea de línea más potente y ampliamente utilizado que se utiliza para capturar o filtrar TCP/IP paquetes que se reciben o se transfieren a través de una red en una interfaz específica.

[También puede gustar: 16 herramientas de monitoreo de ancho de banda útiles para analizar el uso de la red en Linux]

Está disponible en la mayor parte del Basado en Linux/Unix sistemas operativos. tcpdump también nos da una opción para guardar paquetes capturados en un archivo para un análisis futuro. Guarda el archivo en un PCAP Formato, que puede ver el comando TCPDUMP o una herramienta basada en GUI de código abierto llamada Wireshark (Network Protocoly Analyzer) que lee TCPDUMP PCAP Formato de archivos.

Cómo instalar TCPDump en Linux

Muchas distribuciones de Linux ya se enviaron con el tcpdump Herramienta, si en caso de que no lo tenga en un sistema, puede instalarlo utilizando cualquiera de los siguientes comandos.

$ sudo apt-get install tcpdump [en Debian, Ubuntu y Mint] $ sudo yum instalación tcpdump [en Rhel/Centos/Fedora y Rocky Linux/Almalinux] $ sudo emerge -a sys -apps/tcpdump [on Gentoo Linux] $ sudo pacman -s tcpdump [on Arch Linux] $ sudo zypper install tcpdump [en Usura de apertura] 

Comenzando con ejemplos de comando tcpdump

Una vez el tcpdump La herramienta está instalada en su sistema, puede continuar navegando por los siguientes comandos con sus ejemplos.

1. Capturar paquetes desde una interfaz específica

La pantalla de comando se desplazará hasta que interrumpe y cuando ejecutemos el tcpdump comandar que capturará de todas las interfaces, sin embargo con -i Spite solo la captura de la interfaz deseada.

# tcpdump -i eth0 TCPDUMP: Salida verbosa suprimida, use -V o -VV para el protocolo completo de decodificación de decodificación en ETH0, EN10MB de tipo enlace (Ethernet), Tamaño de captura 65535 bytes 11:33:31.976358 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 3500440357: 3500440553, ACK 3652628334, Win 18760, Longitud 196 11:33:31.976603 IP 172.dieciséis.25.125.apwi-rxspooler> 172.dieciséis.25.126.SSH: Flags [.], ACK 196, Win 64487, Longitud 0 11:33:31.977243 ARP, Solicite OMS-HAS-TECMINT.com Tell 172.dieciséis.25.126, longitud 28 11:33:31.977359 ARP, Responder TecMint.com is-at 00: 14: 5e: 67: 26: 1d (oui desconocido), longitud 46 11:33:31.977367 IP 172.dieciséis.25.126.54807> Tecmint.com: 4240+ PTR? 125.25.dieciséis.172.in-addr.arpa. (44) 11:33:31.977599 IP Tecmint.com> 172.dieciséis.25.126.54807: 4240 nxdomain 0/1/0 (121) 11:33:31.977742 IP 172.dieciséis.25.126.44519> Tecmint.com: 40988+ PTR? 126.25.dieciséis.172.in-addr.arpa. (44) 11:33:32.028747 IP 172.dieciséis.20.33.netbios-ns> 172.dieciséis.31.255.Netbios-NS: NBT UDP Packet (137): Query; PEDIDO; Transmitido 11:33:32.112045 IP 172.dieciséis.21.153.netbios-ns> 172.dieciséis.31.255.Netbios-NS: NBT UDP Packet (137): Query; PEDIDO; Transmitido 11:33:32.115606 IP 172.dieciséis.21.144.netbios-ns> 172.dieciséis.31.255.Netbios-NS: NBT UDP Packet (137): Query; PEDIDO; Transmitido 11:33:32.156576 ARP, Solicitar Who-HAS 172.dieciséis.dieciséis.37 Tell Old-OracleHP1.midcorp.mediodía.com, longitud 46 11:33:32.348738 ip tecmint.com> 172.dieciséis.25.126.44519: 40988 nxdomain 0/1/0 (121)

2. Capturar solo n número de paquetes

Cuando corres el tcpdump comandar que capturará todos los paquetes para la interfaz especificada, hasta que golpear el botón Cancelar. Pero usando -C Opción, puede capturar un número especificado de paquetes. El siguiente ejemplo 6 paquetes.

# tcpdump -c 5 -i eth0 TCPDUMP: Salida verbosa suprimida, use -v o -vv para el protocolo completo de decodificación de decodificación en ETH0, EN10MB de tipo enlace (Ethernet), Tamaño de captura 65535 bytes 11:40:20.281355 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 3500447285: 3500447481, ACK 3652629474, Win 18760, Longitud 196 11:40:20.281586 IP 172.dieciséis.25.125.apwi-rxspooler> 172.dieciséis.25.126.SSH: Flags [.], ACK 196, ganar 65235, longitud 0 11:40:20.282244 ARP, Solicite OMS-HAS-TECMINT.com Tell 172.dieciséis.25.126, longitud 28 11:40:20.282360 ARP, Responder TecMint.com is-at 00: 14: 5e: 67: 26: 1d (oui desconocido), longitud 46 11:40:20.282369 IP 172.dieciséis.25.126.53216> Tecmint.comunicarse.Dominio: 49504+ PTR? 125.25.dieciséis.172.in-addr.arpa. (44) 11:40:20.332494 IP TECMINT.comunicarse.netbios-ssn> 172.dieciséis.26.17.Nimaux: Flags [P.], SEQ 3058424861: 3058424914, ACK 693912021, Win 64190, Longitud 53 NBT Packet de sesión: Mensaje de sesión 6 paquetes capturados 23 paquetes recibidos por filtro 0 paquetes caídos por kernel

3. Imprimir paquetes capturados en ASCII

El siguiente tcpdump comando con la opción -A Muestra el paquete en Ascii formato. Es un formato de esquema de codificación de carácter.

# tcpdump -a -i eth0 TCPDUMP: Salida detallada suprimida, use -V o -VV para el protocolo completo de decodificación de decodificación en ETH0, EN10MB de tipo enlace (Ethernet), Tamaño de captura 65535 Bytes 09:31:31.347508 IP 192.168.0.2.ssh> 192.168.0.1.Nokia-Ann-Ch1: Flags [P.], SEQ 3329372346: 3329372542, ACK 4193416789, ganancia 17688, 196 m.R0 ... VUP.mi.X… ~.%...> n ... ofk ... kq ...) eq.d.,... r^l ... m \ [correo electrónico protegido] _ ... j ... yo.*… 2F.MQH ... Q.C ... 6 ... 9.V.G / b4.).Uicy] ... 9 ... x.) ... z.Xf ... '| ... e ... m ... tú.5 ... UL 09:31:31.347760 IP 192.168.0.1.Nokia-ann-ch1> 192.168.0.2.SSH: Flags [.], ACK 196, Win 64351, Longitud 0 m ... Vu.R1 ~ P ... _ ... ^C09: 31: 31.349560 IP 192.168.0.2.46393> B.resolución.Nivel 3.neto.Dominio: 11148+ PTR? 1.0.168.192.in-addr.arpa. (42) [correo electrónico protegido]@... 9.5.2.F+... 1.0.168.192.in-addr.ARPA ... 3 paquetes capturados 11 paquetes recibidos por filtro 0 paquetes caídos por núcleo

4. Mostrar interfaces disponibles

Para enumerar el número de interfaces disponibles en el sistema, ejecute el siguiente comando con -D opción.

# tcpdump -d 1.eth0 2.ETH1 3.USBMON1 (USB BUS Número 1) 4.USBMON2 (USB Bus Número 2) 5.USBMON3 (USB Bus Número 3) 6.USBMON4 (USB Bus Número 4) 7.USBMON5 (USB Bus Número 5) 8.cualquier (pseudo-dispositivo que capture en todas las interfaces) 9.holgazanería

5. Muestra paquetes capturados en hexadecimal y ascii

El siguiente comando con la opción -Xx Capture los datos de cada paquete, incluido su encabezado de nivel de enlace en MALEFICIO y Ascii formato.

# tcpdump -xx -i eth0 11:51:18.974360 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 3509235537: 3509235733, ACK 3652638190, Win 18760, Longitud 196 0x0000: B8AC 6F2E 57B3 0001 6C99 1468 0800 4510 ...W ... l ... h ... e. 0x0010: 00EC 8783 4000 4006 275D AC10 197e AC10 [Correo electrónico protegido]@.'] ... ~… 0x0020: 197D 0016 1129 D12A AF51 D9B6 D5EE 5018 . ...).*.P ... P. 0x0030: 4948 8BFA 0000 0E12 EA4D 22D1 67C0 F123 IH ... M ".G ... # 0x0040: 9013 8F68 AA70 29F3 2EFC C512 5660 4FE8 ... H.P) ... V'O. 0x0050: 590A D631 F939 DD06 E36A 69ED CAC2 95B6 Y ... 1.9 ... Ji ... 0x0060: F8BA B42A 344B 8E56 A5C4 B3A2 ED82 C3A1 ... *4K.V ... 0x0070: 80C8 7980 11ac 9BD7 5B01 18D5 8180 4536 ... y ... [... E6 0x0080: 30FD 4F6D 4190 F66F 2E24 E877 ED23 8EB0 0 0 0 0.OMA ... o.ps.w.#… 0x0090: 5A1D F3EC 4BE4 E0FB 8553 7C85 17D9 866F Z… K… S |… O 0x00A0: C279 0D9C 8F9D 445B 7B01 81EB 1B63 7F12 .Y ... D [... C ... 0x00B0: 71B3 1357 52C7 CF00 95C6 C9F6 63B1 CA51 Q ... WR ... C ... Q 0x00C0: 0AC6 456E 0620 38E6 10CB 6139 FB2A A756 ... EN ... 8 ... A9.*.V 0x00d0: 37D6 C5F3 F5F3 D8E8 3316 D14F D7AB FD93 7 ... 3 ... O ... 0x00E0: 1137 61C1 6A5C B4D1 DDDA 380A F782 D983 .7A.J \ ... 8 ... 0x00f0: 62ff A5A9 BB39 4F80 668A B ... 9O.F. 11:51:18.974759 IP 172.dieciséis.25.126.60952> MDDC-01.midcorp.mediodía.comunicarse.Dominio: 14620+ PTR? 125.25.dieciséis.172.in-addr.arpa. (44) 0x0000: 0014 5E67 261D 0001 6C99 1468 0800 4500 ... ^G & ... L ... H ... 0x0010: 0048 5A83 4000 4011 5E25 AC10 197e AC10 [Correo electrónico protegido]@.^%... ~… 0x0020: 105E EE18 0035 0034 8242 391C 0100 0001 .^… 5.4.B9 ... 0x0030: 0000 0000 0000 0331 3235 0232 3502 3136 ... 125.25.16 0x0040: 0331 3732 0769 6E2D 6164 6472 0461 7270 .172.in-addr.ARP 0x0050: 6100 000C 0001 A .. 

6. Capturar y guardar paquetes en un archivo

Como dijimos, que tcpdump tiene una función para capturar y guardar el archivo en un .PCAP formatear, para hacer esto, solo ejecute el comando con -w opción.

# TCPDUMP -W 0001.PCAP -I eth0 TCPDUMP: Escuchar en ETH0, Link-Type EN10MB (Ethernet), Tamaño de captura 65535 bytes 4 paquetes capturados 4 paquetes recibidos por filtro 0 paquetes caídos por núcleo

7. Lea el archivo de paquetes capturados

Para leer y analizar paquete capturado 0001.PCAP archivo use el comando con -riñonal Opción, como se muestra a continuación.

# tcpdump -r 0001.PCAP Lectura del archivo 0001.PCAP, Link-Type EN10MB (Ethernet) 09:59:34.839117 IP 192.168.0.2.ssh> 192.168.0.1.Nokia-Ann-Ch1: Flags [P.], SEQ 3353041614: 3353041746, ACK 4193563273, ganancia 18760, longitud 132 09:59:34.963022 IP 192.168.0.1.Nokia-ann-ch1> 192.168.0.2.SSH: Flags [.], ACK 132, Win 65351, Longitud 0 09:59:36.935309 IP 192.168.0.1.netbios-dgm> 192.168.0.255.Netbios-DGM: paquete NBT UDP (138) 09:59:37.528731 IP 192.168.0.1.Nokia-ann-ch1> 192.168.0.2.SSH: Flags [P.], SEQ 1:53, ACK 132, Win 65351, Longitud 5

8. Capturar paquetes de dirección IP

Para capturar paquetes para una interfaz específica, ejecute el siguiente comando con la opción -norte.

# tcpdump -n -i eth0 TCPDUMP: salida verbosa suprimida, use -V o -VV para el protocolo completo de decodificación de decodificación en Eth0, EN10MB de tipo enlace (Ethernet), Tamaño de captura 65535 Bytes 12:07:03.952358 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 3509512873: 3509513069, ACK 3652639034, Win 18760, Longitud 196 12:07:03.952602 IP 172.dieciséis.25.125.apwi-rxspooler> 172.dieciséis.25.126.SSH: Flags [.], ACK 196, Win 64171, Longitud 0 12:07:03.953311 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 196: 504, ACK 1, Win 18760, Longitud 308 12:07:03.954288 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 504: 668, ACK 1, WIN 18760, Longitud 164 12:07:03.954502 IP 172.dieciséis.25.125.apwi-rxspooler> 172.dieciséis.25.126.SSH: Flags [.], ACK 668, gane 65535, longitud 0 12:07:03.955298 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 668: 944, ACK 1, WIN 18760, Longitud 276 12:07:03.955425 IP 172.dieciséis.23.dieciséis.netbios-ns> 172.dieciséis.31.255.Netbios-NS: NBT UDP Packet (137): Registro; PEDIDO; Transmitido 12:07:03.956299 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 944: 1236, ACK 1, Win 18760, Longitud 292 12:07:03.956535 IP 172.dieciséis.25.125.apwi-rxspooler> 172.dieciséis.25.126.SSH: Flags [.], ACK 1236, Win 64967, Longitud 0

9. Capturar solo paquetes TCP.

Para capturar paquetes basados ​​en TCP puerto, ejecute el siguiente comando con la opción TCP.

# tcpdump -i eth0 tcp TCPDUMP: salida verbosa suprimida, use -v o -vv para el protocolo completo de decodificación de decodificación en Eth0, EN10MB de tipo enlace (Ethernet), Tamaño de captura 65535 Bytes 12:10:36.216358 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 3509646029: 3509646225, ACK 3652640142, Win 18760, Longitud 196 12:10:36.216592 IP 172.dieciséis.25.125.apwi-rxspooler> 172.dieciséis.25.126.SSH: Flags [.], ACK 196, Win 64687, Longitud 0 12:10:36.219069 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], Seq 196: 504, ACK 1, Win 18760, Longitud 308 12:10:36.220039 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 504: 668, ACK 1, WIN 18760, Longitud 164 12:10:36.220260 IP 172.dieciséis.25.125.apwi-rxspooler> 172.dieciséis.25.126.SSH: Flags [.], ACK 668, Win 64215, Longitud 0 12:10:36.222045 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 668: 944, ACK 1, WIN 18760, Longitud 276 12:10:36.223036 IP 172.dieciséis.25.126.ssh> 172.dieciséis.25.125.APWI-RXSPOLER: FLAGS [P.], SEQ 944: 1108, ACK 1, Win 18760, Longitud 164 12:10:36.223252 IP 172.dieciséis.25.125.apwi-rxspooler> 172.dieciséis.25.126.SSH: Flags [.], ACK 1108, gane 65535, longitud 0 ^C12: 10: 36.223461 IP a mediados de pago.midcorp.mediodía.comunicarse.netbios-ssn> 172.dieciséis.22.183.Receta: banderas [.], SEQ 283256512: 283256513, ACK 550465221, Win 65531, Longitud 1 [| SMB]

10. Paquete de captura desde puerto específico

Supongamos que desea capturar paquetes para el puerto específico 22, ejecute el siguiente comando especificando el número de puerto 22 Como se muestra abajo.

# tcpdump -i eth0 puerto 22 TCPDUMP: salida verbosa suprimida, use -V o -VV para el protocolo completo de decodificación de decodificación en ETH0, EN10MB de tipo enlace (Ethernet), Tamaño de captura 65535 bytes 10:37:49.056927 IP 192.168.0.2.ssh> 192.168.0.1.Nokia-Ann-Ch1: Flags [P.], SEQ 3364204694: 3364204890, ACK 4193655445, ganan 20904, longitud 196 10:37:49.196436 IP 192.168.0.2.ssh> 192.168.0.1.Nokia-Ann-Ch1: Flags [P.], SEQ 4294967244: 196, ACK 1, Win 20904, Longitud 248 10:37:49.196615 IP 192.168.0.1.Nokia-ann-ch1> 192.168.0.2.SSH: Flags [.], ACK 196, Win 64491, Longitud 0 10:37:49.379298 IP 192.168.0.2.ssh> 192.168.0.1.Nokia-Ann-Ch1: Flags [P.], Seq 196: 616, ACK 1, Win 20904, Longitud 420 10:37:49.381080 IP 192.168.0.2.ssh> 192.168.0.1.Nokia-Ann-Ch1: Flags [P.], SEQ 616: 780, ACK 1, Win 20904, Longitud 164 10:37:49.381322 IP 192.168.0.1.Nokia-ann-ch1> 192.168.0.2.SSH: Flags [.], ACK 780, gane 65535, longitud 0

11. Capturar paquetes de la IP de origen

Para capturar paquetes de la fuente IP, Digamos que quieres capturar paquetes para 192.168.0.2, Use el comando de la siguiente manera.

# tcpdump -i eth0 src 192.168.0.2 TCPDUMP: Salida verbosa suprimida, use -V o -VV para el protocolo completo de decodificación de decodificación en Eth0, EN10MB de tipo enlace (Ethernet), Tamaño de captura 65535 Bytes 10:49:15.746474 IP 192.168.0.2.ssh> 192.168.0.1.Nokia-Ann-Ch1: Flags [P.], SEQ 3364578842: 3364579038, ACK 4193668445, ganancia 20904, longitud 196 10:49:15.748554 IP 192.168.0.2.56200> B.resolución.Nivel 3.neto.Dominio: 11289+ PTR? 1.0.168.192.in-addr.arpa. (42) 10:49:15.912165 IP 192.168.0.2.56234> B.resolución.Nivel 3.neto.Dominio: 53106+ PTR? 2.0.168.192.in-addr.arpa. (42) 10:49:16.074720 IP 192.168.0.2.33961> B.resolución.Nivel 3.neto.Dominio: 38447+ PTR? 2.2.2.4.in-addr.arpa. (38)

12. Capturar paquetes desde el destino IP

Para capturar paquetes desde el destino IP, Digamos que quieres capturar paquetes para 50.116.66.139, Use el comando de la siguiente manera.

# tcpdump -i eth0 dst 50.116.66.139 TCPDUMP: Salida verbosa suprimida, use -v o -vv para el protocolo completo de decodificación de decodificación en Eth0, EN10MB de tipo enlace (Ethernet), Tamaño de captura 65535 bytes 10:55:01.798591 IP 192.168.0.2.59896> 50.116.66.139.http: banderas [.], ACK 2480401451, Win 318, Opciones [NOP, NOP, TS VAL 7955710 ECR 804759402], Longitud 0 10:55:05.527476 IP 192.168.0.2.59894> 50.116.66.139.http: banderas [F.], SEQ 2521556029, ACK 2164168606, Win 245, Opciones [NOP, NOP, TS VAL 7959439 CEC 804759284], Longitud 0 10:55:05.626027 IP 192.168.0.2.59894> 50.116.66.139.http: banderas [.], ACK 2, Win 245, Opciones [NOP, NOP, TS VAL 7959537 ECR 804759787], Longitud 0

Este artículo puede ayudarlo a explorar el tcpdump Comando en profundidad y también para capturar y analizar paquetes en el futuro. Hay una serie de opciones disponibles, puede usar las opciones según sus requisitos. Comparta si encuentra útil este artículo a través de nuestro cuadro de comentarios.