linux - 如何在特定端口上打印传入的 http 请求

标签 linux http ubuntu tcpdump

<分区>

我有一个设备可以在我的 Linux 服务器上发送 HTTP 请求。我想查看从该设备到特定端口上的 Linux HTTP 服务器的所有传入请求格式。我已经通过使用 Tcpdump 尝试过,但它似乎不是人类可读的,很难理解这个设备发送什么样的 HTTP 请求。我可以在 ubuntu 服务器上使用任何命令/工具来跟踪此类信息吗?

最佳答案

我使用 tcpdump 捕获数据和 wireshark在我的笔记本上检查它:

sudo tcpdump -ni any port 80 -vv -s0 -w http.pcap

一些信息:

-n: don't convert hosts, ports to names
-i any: capture on all interfaces
-vv: verbose output to see packet count
-s0: capture whole packet
-w http.pcap: write to file

收集到足够的数据后,只需按 Ctrl + C,然后使用 wireshark 打开文件。

虽然您可以单独使用 tcpdump 获取一些信息

-A     Print each packet (minus its link level header) in ASCII.  Handy for capturing web pages

这只会让你走到这一步。

关于linux - 如何在特定端口上打印传入的 http 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52575549/

相关文章:

java - 从 Apache HttpClient 中的 HttpResponse 对象获取 JSON 属性

php - 亚马逊 Ubuntu 服务器上的 Rain 框架

linux - 将 csh 中的 BUNIT 更改为 FITS 文件

java - 没有 USB 设备识别 libusbJava/ubuntu 13.04

linux - iscsiadm : Login I/O error, 接收 PDU 失败

http - oauth2.0 如何传递访问 token

http - 如何停用 JMeter 中的 http 参数编码?

linux - Bash - 需要根据 bash 中命令的输出将数据写入文件

java - 当我写 import java.io.*; 时显示错误

ubuntu - 安装 Ubuntu 18.04 后命令未执行