1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | **docker mitmproxy整理** docker mitmproxy 安装: docker pull mitmproxy/mitmproxy docker 运行mitmproxy 容器命令: 启动mitmproxy 并将证书路径挂在到容器中: docker run --rm -it -v ~/.mitmproxy:/home/mitmproxy/.mitmproxy -p 8080:8080 mitmproxy/mitmproxy 启动mitmdump docker run --rm -it -p 8080:8080 mitmproxy/mitmproxy mitmdump 启动mitmweb docker run --rm -it -p 8080:8080 -p 0.0.0.0:8081:8081 mitmproxy/mitmproxy mitmweb docker 运行mitmproxy容器可能遇到的错误: 1. WARNING: IPv4 forwarding is disabled. Networking will not work. 解决方案: 第一步:在宿主机上执行: echo "net.ipv4.ip_forward=1" >>/usr/lib/sysctl.d/00-system.conf tail -2 /usr/lib/sysctl.d/00-system.conf 第二步:重启network和docker服务 systemctl restart network && systemctl restart docker 如何让外网访问mitmproxy: 1. 在启动命令中 设置--set block_global=false docker file FROM python:3.7 MAINTAINER Jacob"[email protected]" ENV PATH /usr/local/bin:$PATH ADD . /demo_mitm WORKDIR /demo_mitm RUN pip3 install -i https://pypi.doubanio.com/simple/ -r requirements.txt CMD mitmdump -p 8888 -s mitm_addons.py --set block_global=false 在CMD启动容器时默认执行的命令我添加了 --set block_global=false,这样做的原因是block_global是用来设置是否阻止来自 全球可访问网络的连接,这在IANA特殊目的注册表中已定义。默认值:True,只能在内网设置代理,需要指定为False允许外网访问 来自: https://blog.csdn.net/qq_33430083/article/details/103482326 mitmdump 运行过程中可能遇到的问题: mitmdump --no-http2 --anticache -s run.py --no-http2: 不支持http/2请求 , http/2是持久连接的一种传输协议,如果在服务器回传数据之前断开连接, mitmproxy可能会报错 broken pipe --anticache: '缓存避免304状态码问题', 有些网站因为缓存导致监控不到请求的问题。 |