grml-sniff(8) ============ NAME ---- grml-sniff - script for configuring a network sniffing setup SYNOPSIS -------- *grml-sniff* [OPTIONS] DESCRIPTION ----------- This manual page documents briefly the *grml-sniff* command. *grml-sniff* is a script for configuring a network sniffing setup. It does NOT sniff on a hub/switch but instead sets up a man-in-the-middle (MITM) configuration using a bridge device with two network devices. OPTIONS ------- *start*:: Start sniffing setup. *stop*:: Stop sniffing setup (set interfaces down and remove bridge device). *restart*:: Restart grml-sniff. *status*:: Display status of configuration. *info*|*-h*|*--help*:: Show usage information. Usage example ------------- This section describes the setup and configuration for capturing network traffic on a setup like follows (assuming the 'Sniffing Computer' is the box where you are using Grml with grml-sniff): Hub/Switch/Router ^ | | Interface known as 'eth0' in the documentation | | v Interface known as 'eth2' Sniffing Computer <---------------------------> Control Computer (optional, ^ providing GUI, Wireshark, | Backup of dumpfiles, etc) | | Interface known as 'eth1' in the documentation | v Client System Disable DHCP ~~~~~~~~~~~~ Start with booting Grml using the 'nodhcp' bootoption. This makes sure that no network configuration is being executed automatically while booting. If you booted your Grml system without the nodhcp option by accident, just execute 'killall pump; killall dhclient' after booting finished to make sure there aren’t any running DHCP clients anymore. After booting finished check out the available network interfaces: ifconfig -a At least two interfaces should be present (usually named eth0 and eth1, that’s what we are using in this documentation as well). Make sure the network cards are connected with the hub/switch/router and the client accordingly! The third interface (known as eth2 in this documentation) is just optional and not necessary for sniffing itself. Simple (but not necessarily 100% reliable) check for network connection using a software command: ethtool eth0 ethtool eth1 ethtool eth2 Look for 'Advertised auto-negotiation: Yes' and 'Link detected: yes'. Configuration ~~~~~~~~~~~~~ Make sure the according network interfaces are configured as BRIDGE_DEVICES in /etc/grml/router-setup. If you are using eth0 and eth1 you don't have to do anything (the default is just fine)! Otherwise adjust BRIDGE_DEVICES in /etc/grml/router-setup accordingly. For example if the devices you would like to use within the sniffing bridge are named eth2 and eth4 use: BRIDGE_DEVICES='eth2 eth4' Start sniffing setup ~~~~~~~~~~~~~~~~~~~~ Assuming you configured /etc/grml/router-setup as documented in the previous section, finally invoke grml-sniff: grml-sniff start That's it. Now your system should be set up accordingly for capturing network traffic. Capturing traffic ~~~~~~~~~~~~~~~~~ Execute: tcpdump -s0 -C 50 -v -w pcap -i br0 to generate files named pcap, pcap1, pcap2,... each with a file size of ~50MB. Press CTRL-C to stop capturing traffic. You can analyse the generated pcap files for example using wireshark(1). See also -------- grml-ap(8), grml-bridge(8), grml-router(8) AUTHOR ------ grml-sniff was written by Michael Prokop .