Linux网络收集日志命令
Linux网络收集日志命令详细介绍
在 Linux 系统里,有很多命令可用于收集网络日志,下面为你详细介绍:
1.
tcpdump
tcpdump是一款强大的网络数据包捕获工具,能抓取网络接口上传输的数据包,并且可以按照特定条件进行过滤。
基本用法
bash
tcpdump eth0 capture.pcap
-i eth0:指定要捕获数据包的网络接口,这里以eth0为例,你可根据实际情况替换。-w capture.pcap:将捕获的数据包保存到capture.pcap文件中,后续可以用 Wireshark 等工具进行分析。
过滤示例
只捕获源 IP 为192.168.1.100的 HTTP 数据包:
bash
tcpdump eth0 src .1.100 and tcp port http_capture.pcap
2.
Wireshark(命令行版本
tshark)
Wireshark 是广为人知的网络协议分析器,tshark是其命令行版本。
基本用法
bash
tshark eth0 wireshark_capture.pcap
-i eth0:指定捕获数据包的网络接口。-w wireshark_capture.pcap:将捕获的数据包保存到wireshark_capture.pcap文件。
过滤示例
只捕获目标端口为443的 TCP 数据包:
bash
tshark eth0 ssl_capture.pcap
3.
iftop
iftop用于实时显示网络接口的带宽使用情况,虽然它不直接保存日志,但可以把输出重定向到文件。
基本用法
bash
iftop eth0 iftop.log
-i eth0:指定要监控的网络接口。-t:以文本模式输出。> iftop.log:将输出重定向到iftop.log文件。
4.
netstat
netstat能显示网络连接、路由表、网络接口统计等信息,可把输出保存到文件。
基本用法
bash
netstat.log
-a:显示所有连接和监听端口。-n:以数字形式显示地址和端口号。> netstat.log:将输出保存到netstat.log文件。
5.
ss
ss是一个用于显示套接字统计信息的工具,比netstat更快速、更详细。
基本用法
bash
ss ss.log
912ss > ss.log
-a:显示所有套接字。-n:不解析服务名称。> ss.log:将输出保存到ss.log文件。