# 使用 curl 验证代理接入

通过 HTTP、HTTPS CONNECT 和 SOCKS5 TCP 最小命令验证认证、出口和 DNS。

curl 适合建立可复现的最小测试。先从控制台取得当前有效配置，再在受控终端中通过环境变量传入。

## HTTP/HTTPS 测试

```bash
curl --proxy "http://<proxy-username>:<proxy-password>@<gateway-host>:<gateway-port>" \
  "https://<public-test-host>/ip"
```

## SOCKS5 TCP 测试

```bash
curl --proxy "socks5h://<proxy-username>:<proxy-password>@<gateway-host>:<gateway-port>" \
  "https://<public-test-host>/ip"
```

## 准备

- 命令历史和 CI 日志应关闭敏感值回显。
- 使用占位目标先验证链路。

## HTTP 与 HTTPS

- 使用 HTTP 代理访问 HTTPS 目标时，curl 会建立 CONNECT 隧道。
- 通过公网出口字段确认请求没有直连。

## SOCKS5

- 域名目标使用 `socks5h` 让代理侧解析 DNS。
- 只测试 TCP 请求。

## 判断结果

- 依次检查 DNS、TCP、407、CONNECT、TLS 与目标状态。
- 保存脱敏阶段信息，不保存认证头。

html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}
