Linux环境下的嗅探器有tcpdump、Nmap、linSniffer、LinuxSniffer、hunt、sniffit等。下面就只介绍Linux下优秀的嗅探器——tcpdump。
tcpdump 在Linux下的安装十分简单,一般由两种安装方式。一种是以rpm包的形式来进行安装。另外一种是以源程序的形式安装。这里我们讲 rpm包的形式安装。这种形式的安装是最简单的安装方法。rpm包是将软件编译后打包成二进制的格式,通过rpm命令可以直接安装,不需要修改任何东西。
以超级用户登录,使用命令如下:
#rpm -ivh tcpdump-3_4a5.rpm
这样tcpdump就顺利地安装到Linux系统中。
tcpdump 是一个多用途的网络通信监测器,可捕获和显示报文及其内容。它可用来作为协议分析器,在系统及网络设备间提供一个最佳途径来探查通信和(或)连通性问题。大多数时候,网络疑难问题集中在网络配置问题以及诊断硬件相关故障。然而,用户将常常面对协议相关问题并且被迫钻研特定协议的机制来解决问题。使用 tcpdump,被检查的报文将用长格式或短格式(根据使用的命令行选项)显示其信息。tcpdump 有一个非常强有力的过滤机制,可用来查找与指定字符串或规则相匹配的报文。
tcpdump 提供两种主要的捕获模式:杂凑和非杂凑。在杂凑模式下,捕获每个在网络上传递的报文,不管该报文是否发送到执行tcpdump 的系统。举例来说,该模式就是RMON探测器在监测网络通信时使用的模式。网络探测器(probe)在网络上侦听通信并收集协议信息和统计数据。因为局域网(LAN)协议(如Ethernet)是基于广播的,每个被传送的帧可被连接到LAN上的任何网络接口所获得。任何设备可读取每个传送的帧,只要该设备选择这么做并配置成该方式就可以读取。当一个设备或接口从网络读取每个帧,就说明它处于杂凑模式了。实际中,接口必须为杂凑操作进行配置,并且仅仅用于需要网络诊断的特殊场合。www.britepic.org由于这个缘故,仅有root可以在一个接口上启用杂凑模式。这是非root用户不允许调用tcpdump 的主要原因。tcpdump工具提供了许多命令行选项来选择捕获模式、控制输出、指定过滤规则以及指定其他操作特性。这些选项根据它们的功能被分组并且包括以下种类:操作模式、显示选项、报文过滤选项。
操作模式选项用于控制tcpdump 如何捕获和如何显示网络通信的参数。 各选项的意义如下:
- c 捕获指定数量的报文;
- F 使用文件作为过滤表达式的源;
- i 使用可选网络接口捕获报文;
- p 禁止在杂凑模式下捕获;
- r 读取捕获文件而非网络接口;
- w 保存原始报文到文件中。
举例说明:
1.pdump arp将捕获并显示所有地址解析协议(ARP)报文。捕获包括请求和应答。
2.pdump host red and tcp将捕获并显示来自(发往)red 主机的所有传输控制协议报文。
3.pdump hos red1 and port 23将捕获并显示发往red1或从red1发出的所有使用23 端口的报文。用来检查网络上从其他系统到该系统的Telnet报文。端口23是对所有传入的报文来说是Telnet服务端口。
[1] [2] [3] 下一页