mitmproxy 入门安装

Posted catoop

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mitmproxy 入门安装相关的知识,希望对你有一定的参考价值。

mitmproxy 的介绍

mitmproxy是Python编写的一款功能完善的代理工具,mitmproxy是一款支持拦截HTTP和HTTPS请求和响应并即时修改它们的交互式中间人代理工具。同时它提供了Python API给开发者编写插件用来自定义对流量进行处理和修改。

mitmproxy 的特别之处

  • 相对于我们常用的 fiddle 代理工具,它是可以跨平台;
  • 相对于跨平台的 charles 代理工具,它是开源免费的;
  • 最重要的一点,也是为什么我们采用 mitmproxy 来进行做 Mock,它支持使用 Python 进行二次开发,这样就可以结合业务进行灵活拓展了。

mitmproxy 的构成

  • mitmproxy:是一个控制台工具,允许交互式检查和修改 HTTP 流量;
  • mitmweb:mitmproxy 是基于 Web 的用户界面,它允许交互式检查和修改 HTTP 流量;
  • mitmdump:mitmproxy 的命令行版本。它提供了类似 tcpdump 的功能,可查看、记录和以编程方式转换 HTTP 流量。

mitmproxy 的安装配置

1、电脑安装python,安装过程中选择把pip一起安装了

2、进入cmd,使用pip安装mitmproxy

3、如果你脚本中需要使用其他组件,请使用pip对应安装,如下以安装 redis 为例


4、启动命令示例

mitmdump -p 18888 -s ./addons.py  --ssl-insecure --set block_global=false

1、其中 -p 是 --listen-port 的简写,用于设定监听端口,不设定默认端口为 8080
2、-s 是 --scripts 的简写,用于指定要被调用执行的外部 python 脚本
3、–ssl-insecure 指不要验证上游服务器SSL/TLS证书
4、block_global 默认值是true,设定为false后会允许远程客户端连接,比如你要把服务开放到互联网上就就需要设置为false,纯本地内网使用则不需要
5、如果使用web版本(目前还是beta),启动命令为 mitmweb --web-port 18888 -p 18888 -s ./addons.py --ssl-insecure --set block_global=false

mitmproxy 运行出来的代理类型属于 HTTP 代理,如果你需要在相关代理客户端上配置选择 HTTP 代理填入 host 和 port 即可。

官方文档地址:https://docs.mitmproxy.org/stable/


(END)

以上是关于mitmproxy 入门安装的主要内容,如果未能解决你的问题,请参考以下文章

mitmproxy 安装

Mitmproxy代理设置和证书安装

Python3+mitmproxy安装使用教程(Windows)

Parrot 3.6 安装mitmproxy

在Raspberry Pi上安装mitmproxy时出现python问题

mitmproxy 数据抓包