Update the Mitrproxy solution to enhance its aesthetic appeal
Update the Mitrproxy solution to enhance its aesthetic appeal
This commit is contained in:
parent
8b28682624
commit
c3f628b094
|
@ -1,129 +1,128 @@
|
||||||
## Mitmproxy方案使用教程
|
---
|
||||||
(By 北野樱奈)
|
|
||||||
|
# 🌐 **Mitmproxy 方案使用教程**
|
||||||
## 前置要求
|
*(By 北野樱奈)*
|
||||||
1. [下载 mitmproxy](https://mitmproxy.org/) 并安装。
|
|
||||||
2. 具备 WireGuard 和 Python 脚本的基本知识。
|
---
|
||||||
3. 一台客户端设备(例如 Android 模拟器或手机)以及运行 `mitmproxy` 的主机。
|
|
||||||
### 安装步骤
|
## 🛠️ **前置要求**
|
||||||
- Linux/Mac
|
1. 下载并安装 [**Mitmproxy**](https://mitmproxy.org/)。
|
||||||
```markdown
|
2. 熟悉 **WireGuard** 和 **Python 脚本**的基本操作。
|
||||||
# Ubuntu/Debian
|
3. 准备以下设备:
|
||||||
|
- 一台运行 **Mitmproxy** 的主机。
|
||||||
sudo apt update
|
- 一台客户端设备(如 Android 模拟器或手机)。
|
||||||
sudo apt install mitmproxy
|
|
||||||
|
---
|
||||||
# macOS
|
|
||||||
brew install mitmproxy
|
## 📥 **第一步:安装 Mitmproxy**
|
||||||
```
|
|
||||||
- **Windows**: 从 [mitmproxy.org](https://mitmproxy.org/) 下载 `.exe` 安装程序,并按说明完成安装。
|
### 📂 安装步骤
|
||||||
|
|
||||||
### 验证安装
|
#### Linux / MacOS
|
||||||
运行以下命令验证安装是否成功:
|
```bash
|
||||||
```bash
|
# Ubuntu/Debian
|
||||||
mitmproxy --version
|
sudo apt update
|
||||||
```
|
sudo apt install mitmproxy
|
||||||
|
|
||||||
---
|
# macOS
|
||||||
|
brew install mitmproxy
|
||||||
## 第二步:在客户端以及服务端安装 CA 证书
|
```
|
||||||
|
|
||||||
为了解密 HTTPS 流量,客户端需要信任 `mitmproxy` 的 CA 证书。
|
#### Windows
|
||||||
|
从 [**mitmproxy.org**](https://mitmproxy.org/) 下载 `.exe` 安装程序并按说明完成安装。
|
||||||
### 操作步骤
|
|
||||||
1. 启动 `mitmproxy`生成证书:
|
### ✅ 验证安装
|
||||||
```bash
|
运行以下命令确保安装成功:
|
||||||
mitmdump
|
```bash
|
||||||
```
|
mitmproxy --version
|
||||||
2. 在电脑端的C:\Users\用户\ .mitmproxy安装电脑证书(mitmproxy-ca.p12)
|
```
|
||||||
3. mitmproxy的目录下会有mitmproxy-ca-cert.crt
|
|
||||||
4. 将 mitmproxy-ca-cert.crt 重命名为 c8750f0d.0
|
---
|
||||||
5. 将证书安装为系统 CA
|
|
||||||
---
|
## 🔑 **第二步:安装 CA 证书**
|
||||||
1. 将证书移动到系统 CA 目录:
|
|
||||||
```bash
|
### 📜 操作步骤
|
||||||
adb root
|
|
||||||
adb remount
|
1. 启动 `mitmproxy` 并生成证书:
|
||||||
adb shell mv /sdcard/c8750f0d.0 /system/etc/security/cacerts/
|
```bash
|
||||||
```
|
mitmdump
|
||||||
2. 设置正确的权限:
|
```
|
||||||
```bash
|
2. 找到生成的证书文件:
|
||||||
adb shell chmod 644 /system/etc/security/cacerts/c8750f0d.0
|
- 证书位于:
|
||||||
```
|
`C:\Users\<用户名>\.mitmproxy\mitmproxy-ca-cert.crt`(Windows)
|
||||||
3. 重启设备:
|
`~/.mitmproxy/`(Linux / MacOS)
|
||||||
```bash
|
3. 将 `mitmproxy-ca-cert.crt` 重命名为 `c8750f0d.0`。
|
||||||
adb reboot
|
4. 使用以下命令将证书移动到系统 CA 目录并设置权限:
|
||||||
```
|
```bash
|
||||||
|
adb root
|
||||||
---
|
adb remount
|
||||||
---
|
adb shell mv /sdcard/c8750f0d.0 /system/etc/security/cacerts/
|
||||||
|
adb shell chmod 644 /system/etc/security/cacerts/c8750f0d.0
|
||||||
## 第三步:下载重定向脚本
|
adb reboot
|
||||||
|
```
|
||||||
可以从仓库下载脚本
|
|
||||||
|
---
|
||||||
### 注意:`请一定要修改redirect_server.py内的IP地址`
|
|
||||||
```python
|
## 🔧 **第三步:配置重定向脚本**
|
||||||
import gzip
|
|
||||||
import json
|
从仓库下载 `redirect_server.py` 并修改其中的 `SERVER_HOST`:
|
||||||
from mitmproxy import http
|
|
||||||
|
```python
|
||||||
SERVER_HOST = '修改这里'
|
import gzip
|
||||||
SERVER_PORT = 80
|
import json
|
||||||
|
from mitmproxy import http
|
||||||
REWRITE_HOST_LIST = [
|
|
||||||
'ba-jp-sdk.bluearchive.jp',
|
SERVER_HOST = '修改这里' # 替换为你的服务器 IP
|
||||||
'prod-gateway.bluearchiveyostar.com',
|
SERVER_PORT = 80
|
||||||
'prod-game.bluearchiveyostar.com',
|
|
||||||
# 'prod-notice.bluearchiveyostar.com',
|
REWRITE_HOST_LIST = [
|
||||||
# 'prod-logcollector.bluearchiveyostar.com',
|
'ba-jp-sdk.bluearchive.jp',
|
||||||
]
|
'prod-gateway.bluearchiveyostar.com',
|
||||||
```
|
'prod-game.bluearchiveyostar.com',
|
||||||
|
]
|
||||||
---
|
```
|
||||||
|
|
||||||
## 第四步:启动 mitmproxy 并加载脚本
|
---
|
||||||
|
|
||||||
运行以下命令以使用重定向脚本启动 `mitmproxy`:
|
## 🚀 **第四步:启动 Mitmproxy**
|
||||||
```bash
|
|
||||||
mitmweb -m wireguard --no-http2 -s redirect_server.py --set termlog_verbosity=warn --ignore 这里输入你的IP地址
|
使用以下命令加载重定向脚本并启动代理:
|
||||||
```
|
```bash
|
||||||
|
mitmweb -m wireguard --no-http2 -s redirect_server.py --set termlog_verbosity=warn --ignore <你的IP地址>
|
||||||
### 参数说明:
|
```
|
||||||
- `-m wireguard`: 使用 WireGuard 作为网络层。
|
|
||||||
- `--no-http2`: 禁用 HTTP/2 以提高兼容性。
|
### 📝 参数说明:
|
||||||
- `-s redirect_server.py`: 加载重定向脚本。
|
- `-m wireguard`: 使用 WireGuard 作为网络层协议。
|
||||||
- `--set termlog_verbosity=warn`: 设置日志级别为警告。
|
- `--no-http2`: 禁用 HTTP/2 提高兼容性。
|
||||||
|
- `-s redirect_server.py`: 加载重定向脚本。
|
||||||
你可以通过 `http://localhost:8081` 访问 `mitmweb` 界面监控流量。
|
- `--set termlog_verbosity=warn`: 仅显示警告级别日志。
|
||||||
|
|
||||||
---
|
访问 `http://localhost:8081` 查看 Mitmproxy 界面。
|
||||||
|
|
||||||
## 第五步:安装并配置 WireGuard
|
---
|
||||||
|
|
||||||
使用 WireGuard 将客户端流量路由到 `mitmproxy`。
|
## 🔄 **第五步:安装 WireGuard**
|
||||||
|
|
||||||
### 安装步骤
|
### 📥 安装步骤
|
||||||
- **Android**: [下载 WireGuard](https://play.google.com/store/apps/details?id=com.wireguard.android)。
|
- **Android**: 从 [**Google Play**](https://play.google.com/store/apps/details?id=com.wireguard.android) 下载。
|
||||||
- **其他平台**: 参考 [WireGuard 官方安装指南](https://www.wireguard.com/install/)。
|
- **其他平台**: 参考 [**WireGuard 官方安装指南**](https://www.wireguard.com/install/)。
|
||||||
|
|
||||||
### 配置步骤
|
### ⚙️ 配置步骤
|
||||||
1. 打开 WireGuard 客户端,点击左下角+号,选择扫描二维码
|
1. 打开 WireGuard 客户端并扫描 Mitmproxy 提供的二维码。
|
||||||
2. 选择后模拟器会弹出扫一扫窗口,选择实时截屏
|
2. 完成后启用该配置,将所有流量路由到 `Mitmproxy`。
|
||||||
3. 选择截屏后,会有获取图像窗口,移动到Mitmproxy浏览器页面上的二维码(没有的话在设置里面)
|
|
||||||
4. 启用该配置。
|
---
|
||||||
|
|
||||||
---
|
## 🛠️ **故障排查**
|
||||||
|
|
||||||
## 故障排查
|
### ❌ 错误:Client TLS handshake failed
|
||||||
|
- 检查电脑与客户端是否安装了相同的 CA 证书。
|
||||||
### Client TLS handshake failed. The client does not trust the proxy's certificate for yostar-oversea-netsdk-logging.ap-southeast-1.log.aliyuncs.com (OpenSSL Error([('SSL routines', '', 'ssl/tls alert certificate unknown')]))
|
- 确保 CA 证书安装为系统证书。
|
||||||
- 确保电脑端以及客户端证书为内容一样的
|
|
||||||
- 确保双端安装了Mitmproxy证书
|
### ❌ 安卓端证书消失
|
||||||
|
- 使用 MT 管理器授予 SU 权限。
|
||||||
### 安卓端安装后证书消失?
|
- 手动前往 `/system/etc/security/cacerts/`,重新设置权限为 `644`。
|
||||||
- 可以使用MT管理器授予SU权限
|
|
||||||
- 然后前往/system/etc/security/cacerts/
|
---
|
||||||
- 找到 c8750f0d.0 给予 664 权限。用户组为 root
|
|
||||||
|
🎉 **完成!**
|
||||||
---
|
|
Reference in New Issue