使用 Caddy + acme.sh 搭建带认证的 TLS 正向代理

💡 原文中文,约3900字,阅读约需10分钟。
📝

内容提要

Caddy通过forwardproxy插件简化HTTPS正向代理配置,支持Basic Auth认证,并使用acme.sh灵活管理证书,适合多种DNS服务商。配置简单,维护成本低,适合注重隐私的用户。

🎯

关键要点

  • Caddy通过forwardproxy插件简化HTTPS正向代理配置,支持Basic Auth认证。
  • 使用acme.sh灵活管理证书,适合多种DNS服务商。
  • 配置简单,维护成本低,适合注重隐私的用户。
  • 传统代理方案(如Squid、Nginx)配置繁琐,TLS支持需要额外操作。
  • acme.sh提供更灵活的证书签发流程,支持DNS-01验证和指定CA。
  • 需要一台有公网IP的服务器和一个已解析到服务器IP的域名。
  • 支持API操作的DNS服务商是必需的,用于DNS-01验证。
  • 提供自动化安装脚本,简化安装过程。
  • 手动步骤包括安装acme.sh、设置API Token、签发证书和安装证书。
  • Caddy二进制不包含forwardproxy插件,需要使用xcaddy自行编译。
  • 创建Caddyfile以配置代理和伪装普通网站。
  • 配置中包括basic_auth、hide_ip、hide_via和probe_resistance等选项。
  • 创建systemd服务以管理Caddy的启动和运行。
  • 客户端使用HTTPS代理连接,支持浏览器和命令行工具。
  • 推荐使用NaiveProxy客户端以获得更好的流量混淆效果。
  • acme.sh自动创建cron job以续期证书,无需手动干预。
➡️

继续阅读