Linux 抓包工具

1. 使用socat

介绍:socat 是 Linux 系统中自带的一个工具,最常见的用法是在网络编程中用作网络中继或端口转发器,可以用来抓包。

安装:直接通过包管理器命令安装即可,如 yum install -y socat

用法:socat TCP-LISTEN:port1,fork TCP:host:port2

这个命令的作用是监听本地的 port1,当有连接进来时,将数据转发到指定的 host 的 port2。具体说明如下: * TCP-LISTEN:port1:在本地 TCP 端口 port1 上监听连接。 * fork:表示允许多个客户端连接,并为每个连接创建一个新的进程来处理。 * TCP:host:port2:将连接转发到指定的远程 host 的 port2 端口。

比如,本机启动了一个Zabbix,端口为80。通过socat 启动一个14001端口,将访问本机14001的请求都指向本机的80端口:socat -v TCP-LISTEN:14001,fork TCP:127.0.0.1:80,此时通过浏览器访问此服务器的14001端口,也可以看到Zabbix界面。 file socat将会打印出请求的全部内容: file

2. 通过mitmproxy

介绍:mitmproxy 是一个流行的中间人代理工具,用于拦截、修改和查看 HTTP 和 HTTPS 流量。它经常用于网络调试、安全测试和网络流量分析等场景。

在线安装:mitmproxy是一个Python工具,需要通过pip安装,yum install -y python3-pip python3-devel && pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple mitmproxy

离线安装: 先把所有的rpm包下载下来:yumdownloader --resolve python3-pip python3-devel,将包考到目标机器上,然后执行:rpm -ivh * 再把所有的pip包下载下来:pip3 download -i https://pypi.tuna.tsinghua.edu.cn/simple mitmproxy -d /opt/,然后拷贝到目标机器上再安装:pip3 install ./*

用法:比如启动 mitmproxy 8080端口,代理我本机的80端口,只需要执行命令mitmproxy -p 8080 --mode reverse:http://localhost:80,当你访问 mitmproxy 监听的端口(例如浏览器中输入 http:// :8080)时,mitmproxy 将会将流量代理到本地的 80 端口,同时仍然允许你查看和修改流量。

--mode reverse 参数来反向代理流量
-p 参数来指定 mitmproxy 监听的端口

这种方式可以更直观的查看每个请求: file 上下键选择想要查看的请求,回车可以查看细节,q可以返回列表或者退出。 file

本文由博客一文多发平台 OpenWrite 发布!

相关推荐

  1. 测试:工具

    2024-03-22 10:38:03       41 阅读
  2. linux

    2024-03-22 10:38:03       37 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-22 10:38:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-22 10:38:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-22 10:38:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-22 10:38:03       20 阅读

热门阅读

  1. C++ opencv2找错

    2024-03-22 10:38:03       21 阅读
  2. 后端学习笔记

    2024-03-22 10:38:03       20 阅读
  3. 拟人算法:快速排序

    2024-03-22 10:38:03       19 阅读
  4. 在Ubuntu 22.04上安装Jenkins

    2024-03-22 10:38:03       19 阅读