非常简单,无需额外配置。
mubeng 具有 2 个核心功能:
这对于避免各种类型的 IP 封禁非常有用,例如暴力破解保护、API 速率限制或基于 IP 的 WAF 拦截。我们还允许用户完全自行决定从任何地方使用代理池资源。
因此,如果你想要检查代理池,无需再借助其他额外的代理检查工具。
只需从 releases 页面 下载预构建的二进制文件然后运行即可!
运行以下命令拉取 Docker 镜像:```bash ▶ docker pull ghcr.io/mubeng/mubeng:latest
## 源代码
使用 [Go](https://golang.org/doc/install) 编译器:```bash
▶ go install -v github.com/mubeng/mubeng@latest
从源代码手动构建可执行文件:```bash ▶ git clone https://github.com/mubeng/mubeng ▶ cd mubeng ▶ make build ▶ (sudo) install ./bin/mubeng /usr/local/bin
# 用法
使用本工具时,始终需要提供你的代理列表,无论是用于检查还是作为代理IP轮换的代理池。
<center>
<a href="#"><img alt="kitabisa mubeng" src="https://assets.kitploit.com/production/public/readmes/6846/00da09beb0579d8445f07b09eb977f63be93627d3e6e9ebfcb96dcaed4f3fafd.png" width="80%"></a>
</center>
## 基础```bash
▶ mubeng [-c|-a :8080] -f file.txt [options...]
以下是它支持的所有选项。```bash ▶ mubeng -h
| **标志** | **描述** |
|-------------------------------|--------------------------------------------------------|
| -f, --file `<FILE>` | 代理文件。 |
| -a, --address `<ADDR>:<PORT>` | 运行代理服务器。 |
| -A, --auth `<USER>:<PASS>` | 设置代理服务器的认证。 |
| -d, --daemon | 将代理服务器守护进程化。 |
| -c, --check | 执行代理存活检测。 |
| -g, --goroutine `<N>` | 最大使用的 goroutine 数(默认:50)。 |
| --only-cc `<AA>,<BB>` | 仅显示指定国家代码(逗号分隔)。 |
| -t, --timeout | 代理服务器/检测允许的最长时间(默认:30s)。 |
| -r, --rotate `<AFTER>` | 每执行 `<AFTER>` 次请求后轮换代理 IP(默认:1)。 |
| --rotate-on-error | 轮换代理 IP 并重试失败的 HTTP 请求。 |
| --remove-on-error | 在失败的 HTTP 请求后从代理池中移除代理 IP。 |
| --max-errors `<N>` | 轮换期间允许的最大错误数(默认:3)。 |
| | 与 `--rotate-on-error` 搭配使用。 |
| | 如果值小于 0(例如 -1),轮换将 |
| | 无限继续。 |
| --max-redirs `<N>` | 允许的最大重定向次数(默认:10)。 |
| --max-retries `<N>` | 失败 HTTP 请求的最大重试次数(默认:0)。 |
| -m, --method `<METHOD>` | 轮换方法(顺序/随机)(默认:顺序)。 |
| -s, --sync | 同步将等待前一个请求完成。 |
| -v, --verbose | 输出 HTTP 请求/响应,或在检测时显示失效代理。 |
| -o, --output `<FILE>` | 保存代理服务器或存活检测的输出。 |
| -u, --update | 将 mubeng 更新到最新的稳定版本。 |
| -w, --watch | 监视代理文件,从更改中实时重新加载。 |
| -V, --version | 显示当前 mubeng 版本。 |
<table>
<td>
<h4>注意:</h4>
<ul>
<li>轮换会对所有请求计数,即使请求失败。
<!-- <ul>
<li>轮换是增量式的,从列表开头开始。</li>
<li>轮换意味着随机,<b>不是</b>从代理池中选择/递增一个代理。我们没有设置代理是否已被使用的条件。因此,无法保证当请求达到 <i>N</i> 值 <code>(-r/--rotate)</code> 时,IP 代理一定会轮换。</li>
</ul> -->
</li>
<li>代理服务器默认异步运行,因此无法保证 <i>N</i> 之后的请求(即 <i>N+1</i> 等)会轮换代理 IP,请改用 <code>-s/--sync</code> 标志等待前一个代理的请求完成。</li>
<li>守护进程模式 <code>(-d/--daemon)</code> 将在 (Linux/OSX) 系统上安装 mubeng 服务/在 Windows 上设置回调。
<ul>
<li>因此,你可以使用 <code>journalctl</code>、<code>service</code> 或 <code>net</code>(Windows)命令来控制服务,以启动/停止代理服务器。</li>
<li>每当激活守护进程模式时,它会强制停止并卸载现有的 mubeng 服务,然后重新安装并以守护进程方式启动。</li>
</ul>
</li>
<li>详细模式 <code>(-v/--verbose)</code> 和超时 <code>(-t/--timeout)</code> 同时适用于代理检测和代理 IP 轮换操作。</li>
<li>当启用详细模式 <code>(-v/--verbose)</code> 时,会显示 HTTP 流量请求和响应,但
<ul>
<li>我们<b>不</b>明确显示请求/响应正文,并且</li>
<li>头部中的所有 cookie 值将自动被遮盖。</li>
</ul>
</li>
<li>如果使用输出选项 <code>(-o/--output)</code> 来运行代理 IP 轮换器,请求/响应头部将<b>不</b>写入日志文件。</li>
<li>超时选项 <code>(-t/--timeout)</code> 的值是一个可能带符号的十进制数字序列,每个数字可带小数部分和单位后缀,例如 "5s"、"300ms"、"-1.5h" 或 "2h45m"。
<ul>
<li>有效的时间单位是 "ns"、"us"(或 "µs")、"ms"、"s"、"m" 和 "h"。</li>
</ul>
</li>
<li>最大错误数 <code>(--max-errors)</code> ≠ 最大重试次数 <code>(--max-retries)</code>。</li>
<ul>
<li>最大重试次数 <code>(--max-retries)</code> 适用于使用同一个代理重试失败的 HTTP 请求。</li>
<li>而最大错误数 <code>(--max-errors)</code> 指的是所用代理的失败 HTTP 请求总数。</li>
<li>例如,一旦达到最大重试次数 <code>(--max-retries)</code> <i>(如果指定)</i>,错误被计数,并且代理 IP 将为同一个失败的 HTTP 请求轮换,直到达到最大错误数 <code>(--max-errors)</code>,而最大重试次数 <code>(--max-retries)</code> <b>不</b>会触发代理轮换。</li>
</ul>
<li>如果最大错误数 <code>(--max-errors)</code> 的值小于 <b>0</b>(例如 <b>-1</b>),轮换将无限继续。</li>
</ul>
</td>
</table>
## 安装 SSL 证书
mubeng 使用由 [GoProxy](https://github.com/elazarl/goproxy) 提供的内置证书颁发机构。在 mubeng 代理服务器运行时,可以通过在浏览器中访问 `http://mubeng/cert` 来导出生成的证书。
CA 证书的安装步骤与[其他](https://portswigger.net/burp/documentation/desktop/external-browser-config/certificate)代理工具类似。
## 示例
例如,你有一个代理池 `(proxies.txt)`,内容如下:
<table>
<td>
<pre>http://127.0.0.1:8080
https://127.0.0.1:443
socks4://127.0.0.1:4145
socks5://127.0.0.1:2121
...
...</pre>
</td>
</table>
> 因为我们使用了自动切换传输,所以 `mubeng` 可以同时接受多种代理协议方案。<br>
> 请参阅此包的[文档](https://pkg.go.dev/github.com/mubeng/mubeng/pkg/mubeng#Transport)。
### 代理检测器