Linux就业技术指导(五):Linux运维核心管理命令详解 (17)

上边的输出信息中不仅包含了端口号,而且还包括了服务的版本号。在网络安全性要求较高的主机上,最好能够屏蔽服务版本号,以防止黑客利用特定版本的服务漏洞进行攻击。

2.6 tcpdump:监听网络流量 2.6.1 命令详解

功能说明:

tcpdump命令是一个截获网络数据包的包分析工具。tcpdump可以将网络中传送的数据包的“头”完全截获下来以提供分析。它支持针对网络层,协议,主机,端口等的过滤,并支持与,或,非逻辑语句协助过滤有效信息。

tcpdump命令工作时要先把网卡的工作模式切换到混杂模式(promiscuous mode)。因为要修改网络接口的工作模式,所以tcpdump命令需要以root的身份运行。

选项说明:

参数选项 解释说明(带@的为重点)
-A   以ASCII码的方式显示每一个数据包(不会显示数据包中链路层的头部信息)。在抓取包含网页数据的数据包时,可方便查看数据  
-c <数据包数目>   接收到指定的数据包数目后退出命令@  
-e   每行的打印输出中将包含数据包的数据链路层头部信息  
-i <网络接口>   指定要监听数据包的网络接口@  
-n   不进行DNS解析,加快显示速度@  
-nn   不将协议和端口数字等转换成名字@  
-q   以快速输出的方式运行,此选项仅显示数据包的协议概要信息,输出信息较短@  
-s <数据包大小>   设置数据包抓取长度,如果不设置则默认为68字节,设置为0则自动选择合适的长度来抓取数据包  
-t   在每行输出信息中不显示时间戳标记  
-tt   在每行输出信息中显示无格式的时间戳标记  
-ttt   显示当前行与前一行的延迟  
-tttt   在每行打印的时间戳之前添加日期  
-ttttt   显示当前行与第一行的延迟  
-v   显示命令执行的详细信息  
-vv   显示比-v选项更加详细的信息  
-vvv   显示比-vv选项更加详细的输出  
2.6.2 使用范例

(1)不加参数运行tcpdump命令监听网络

[root@localhost ~]# tcpdump #默认情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 05:12:45.464963 IP localhost.ssh > localhost.50832: Flags [P.], seq 898292388:898292596, ack 861396487, win 317, length 208 05:12:45.465055 IP localhost.50832 > localhost.ssh: Flags [.], ack 208, win 523, length 0 05:12:45.465215 IP localhost.57595 > localhost.domain: 4104+ PTR? 254.0.168.192.in-addr.arpa. (44) 05:12:45.467851 IP localhost.domain > localhost.57595: 4104 1/0/0 PTR localhost. (67) 05:12:45.467906 IP localhost.57067 > localhost.domain: 107+ PTR? 233.0.168.192.in-addr.arpa. (44) 05:12:45.469444 IP localhost.domain > localhost.57067: 107 1/0/0 PTR localhost. (67) 05:12:45.469504 IP localhost.34192 > localhost.domain: 2703+ PTR? 1.0.168.192.in-addr.arpa. (42) 05:12:45.621206 IP localhost.ssh > localhost.50832: Flags [P.], seq 3120:3280, ack 1, win 317, length 160 05:12:45.621258 IP localhost.50832 > localhost.ssh: Flags [.], ack 3280, win 524, length 0 05:12:45.636742 IP localhost.ssh > localhost.50832: Flags [P.], seq 3280:3536, ack 1, win 317, length 256 05:12:45.643843 IP localhost.50832 > localhost.ssh: Flags [P.], seq 1:65, ack 3536, win 523, length 64 05:12:45.643889 IP localhost.ssh > localhost.50832: Flags [P.], seq 3536:3696, ack 65, win 317, length 160 ^C #tcpdump命令在运行期间可以使用组合Ctrl+C终止程序 29 packets captured #最后三行就是按CTRL+C后输出的监听到的数据包汇总信息 32 packets received by filter 0 packets dropped by kernel

使用tcpdump命令时,如果不输入过滤规则,则输出的数据量将会很大。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zygwxj.html