mitmproxy 安装指南

  • author: happyxhw
  • date: 2019-04-16
  • title: mitmproxy simple guide

感谢 参考链接

1.1、pip环境安装(conda环境python3)

pip install mitmproxy
# 验证安装 CTRL C 退出
mitmproxy 

1.2、下载二进制文件 (centos7未通过)

wget https://github.com/mitmproxy/mitmproxy/releases/download/v4.0.1/mitmproxy-4.0.1-linux.tar.gz

1.3、pip3环境安装(centos7测试通过)

# 安装pip3环境
sudo yum install python36
sudo yum install python36-devel
sudo yum install python36-setuptools
sudo easy_install-3.6 pip

sudo python3 -m pip install mitmproxy
sudo python3 -m pip install bs4
# 不要使用sudo
/usr/local/bin/mitmproxy

2、安装ca证书

2.1 产生ca证书

mitmdump
ls ~/.mitmproxy # 可以看到证书文件

2.2 pem证书转crt

cd ~/.mitmproxy
openssl x509 -in mitmproxy-ca-cert.pem -inform PEM -out mitmproxy-ca-cert.crt

2.3 根据所使用的操作系统安装证书

a、centos 6 & 7

update-ca-trust force-enable
cp mitmproxy-ca-cert.crt /etc/pki/ca-trust/source/anchors/
update-ca-trust extract

b、archlinux & manjaro

sudo cp mitmproxy-ca-cert.crt /etc/ca-certificates/trust-source/anchors
sudo trust extract-compat

c、ubuntu (未实验)

sudo mkdir /usr/share/ca-certificates/extra
sudo cp xxx.crt /usr/share/ca-certificates/extra
sudo dpkg-reconfigure ca-certificates

3、启动mitmproxy

# 默认8080端口
mitmproxy
# 指定端口
mitmproxy -p 8080
# 加入拦截脚本
mitmproxy -s indject_js_proxy.py
# 指定正向代理(anti firewall时有用)
mitmproxy -s indject_js_proxy.py --mode upstream:http://127.0.0.1:8118

4、注意事项

1、如果存在GFW问题,mitmproxy需要指定正向代理,正向代理必须使用加密的vpn或ss,否则GFW会干扰连接
编辑于 2019-10-25