简单分析Linux系统安全工具tcpdump

    作者:课课家教育更新于: 2018-12-20 18:21:08

          在这篇文章当中,小编分享的是关于Linux系统安全工具tcpdump的简单分析,感兴趣的大家可以先和小编一起来学习一下tcpdump这个工具。

     简单分析Linux系统安全工具tcpdump_Linux_系统安全工具_tcpdump

      在Linux h3cne系统安全当中,tcpdump是强大的网络数据采集分析工具之一,它是根据使用者的定义对网络上的数据包进行截获的包分析工具。TcpDump可以将网络中传送的数据包完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not h3c等逻辑语句来帮助你去掉无用的信息。

      下面,我们来根据以下的内容来学习一下tcpdump吧。

      1.安装系统自带的tcpdump工具

      yum install tcpdump -y

      2.监视主机的数据包

      [root@centos179min ~]# tcpdump -i eth0 --监控本机的eth0网卡

      [root@centos179min ~]# tcpdump host 192.168.1.250 and \\(192.168.1.251 or 192.168.1.252 \\) --截获多个IP的数据包

      [root@centos179min ~]# tcpdump -i eth0 dst host 192.168.1.179 --监视所有送到主机到本机的数据包

      [root@centos179min ~]# tcpdump -i eth0 src host 192.168.1.179 --截获本机发送的所有数据

      3.监视主机的端口

      [root@centos179min ~]# tcpdump tcp port 22 --监视本机的tcp22端口

      [root@centos179min ~]# tcpdump udp port 123 --监视本机的udp123端口

      4.参数

      tcpdump支持相当多的不同参数,如使用-i参数指定tcpdump监听的网络接口,这在计算机具有多个网络接口时非常有用,使用-c参数指定要监听的数据包数量,使用-w参数指定将监听到的数据包写入文件中保存,等等。

      详细参数

      -c count

      tcpdump将在接受到count个数据包后退出

      -e 每行的打印输出中将包括数据包的数据链路层头部信息

      -F file

      使用file文件作为过滤条件表达式的输入, 此时命令行上的输入将被忽略

      -i interface

      指定tcpdump需要监听的接口

      -r file

      从文件file中读取包数据

      -t 在每行输出中不打印时间戳

      -tt 不对每行输出的时间进行格式处理(nt: 这种格式一眼可能看不出其含义, 如时间戳打印成1261798315)

      -ttt tcpdump输出时, 每两行打印之间会延迟一个段时间(以毫秒为单位)

      -tttt 在每行打印的时间戳之前添加日期的打印

      -v 当分析和打印的时候, 产生详细的输出

      dst host host 如果IPv4/v6数据包的目的域是host, 则与此对应的条件表达式为真.host可以是一个ip地址, 也可以是一个主机名

      src host host 如果IPv4/v6 数据包的源域是host, 则与此对应的条件表达式为真.

      host 可以是一个ip地址, 也可以是一个主机名

      5.命令格式

      tcpdump采用命令行方式,它的命令格式为:

      tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ]

      [ -i 网络接口 ] [ -r 文件名] [ -s snaplen ]

      [ -T 类型 ] [ -w 文件名 ] [表达式 ]

      tcpdump的选项介绍

      -a  将网络地址和广播地址转变成名字;

      -d  将匹配信息包的代码以人们能够理解的汇编格式给出;

      -dd  将匹配信息包的代码以C语言程序段的格式给出;

      -ddd  将匹配信息包的代码以十进制的形式给出;

      -e  在输出行打印出数据链路层的头部信息;

      -f  将外部的Internet地址以数字的形式打印出来;

      -l  使标准输出变为缓冲行形式;

      -n  不把网络地址转换成名字;

      -t  在输出的每一行不打印时间戳;

      -v  输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息;

      -vv  输出详细的报文信息;

      -c  在收到指定的包的数目后,tcpdump就会停止;

      -F  从指定的文件中读取表达式,忽略其它的表达式;

      -i  指定监听的网络接口;

      -r  从指定的文件中读取包(这些包一般通过-w选项产生);

      -w  直接将包写入文件中,并不分析和打印出来;

      -T  将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程调用)和snmp(简单 网络管理协议)。

      tcpdump总的输出格式为:系统时间 来源主机.端口 > 目标主机.端口 数据包参数

      tcpdump能够分析网络行为,性能和应用产生或接收网络流量。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息,从而使用户能够进一步找出问题的根源。也可以使用 tcpdump 的实现特定目的,例如在路由器和网关之间拦截并显示其他用户或计算机通信

      以上就是从tcpdump的数据包、参数、命令等内容进行讲解的内容,希望小编的这篇文章能给大家带来些许的帮助,如果大家有其他的学习需要,可以前往课课家教育平台来选择课程学习,谢谢大家的阅读!

课课家教育

未登录