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 入门安装的主要内容,如果未能解决你的问题,请参考以下文章
Python3+mitmproxy安装使用教程(Windows)