什么是反向代理?为什么用它?
反向代理 的工作方式是:你访问的不是 Google 的真实服务器,而是你自己的服务器,你的服务器接收到请求后,再替你去访问 Google,获取数据,然后再返回给你。

这样做的好处:
- 突破网络限制:这是最主要的目的,你的代理服务器可以部署在能够自由访问 Google 的网络环境中(例如一台海外的 VPS)。
- 隐藏真实客户端:对于 Google 所有访问请求都来自你的代理服务器 IP,而不是你的真实 IP。
- 缓存加速:代理服务器可以缓存 Google 的静态资源(如图片、JS、CSS 文件),当你或其他人再次访问时,可以直接从代理服务器获取,速度更快,也减轻了 Google 服务器的压力。
- 统一入口和安全管理:所有访问都通过代理服务器,可以方便地进行统一的访问控制、日志记录和加密(HTTPS)。
准备工作
在开始之前,你需要准备以下几样东西:
-
一台海外 VPS (Virtual Private Server):
- 操作系统:推荐使用 Linux,如 Ubuntu 22.04 或 CentOS 7/8,本教程将以 Ubuntu 为例。
- 配置:入门级配置(如 1 核 CPU, 1GB 内存, 20GB SSD)通常足够。
- 地区:选择一个网络对你来说延迟较低、且能稳定访问 Google 的地区,如香港、日本、新加坡、美国西海岸等。
- 购买 VPS:你可以从 Vultr, DigitalOcean, Linode, BandwagonWagon (搬瓦工), 阿里云/腾讯云国际版 等服务商购买。
-
一个域名:
(图片来源网络,侵删)- 虽然不是绝对必需,但强烈推荐,域名可以让你的代理服务更稳定、更安全(可以配置免费 SSL 证书)。
- 购买一个域名,并将域名的 DNS 解析指向你的 VPS 的 IP 地址。
-
基本的 Linux 命令操作能力:
你需要会通过 SSH 连接到你的 VPS,并执行一些基本的命令。
搭建方案选择
有几种非常成熟的开源工具可以用来搭建反向代理,各有优劣:
| 方案 | 优点 | 缺点 | 适合人群 |
|---|---|---|---|
| Nginx | 性能极高、稳定、配置灵活、资源占用低,配置相对复杂一些,需要手动处理 SSL 证书。 | 喜欢折腾、追求极致性能和自定义的用户。 | 有一定 Linux 基础,希望完全掌控服务器的用户。 |
| Caddy | 极其简单!自动配置 HTTPS (Let's Encrypt),配置文件非常简洁。 | 相比 Nginx,在处理复杂规则时可能稍弱。 | 新手首选!希望快速、零配置搭建一个稳定、安全的 HTTPS 代理。 |
| naïveproxy | 使用 Google 的代理技术,抗检测能力强,不易被封锁。 | 配置相对复杂,需要配合浏览器客户端(如 SwitchyOmega)。 | 对“反封锁”有极高要求,不介意在浏览器上做额外配置的用户。 |
使用 Caddy (最简单推荐)
Caddy 是目前最简单、最省心的方案,尤其适合新手。

第 1 步:连接 VPS 并更新系统
# SSH 登录到你的 VPS ssh root@your_vps_ip # 更新软件包列表 sudo apt update && sudo apt upgrade -y
第 2 步:安装 Caddy
Caddy 官方提供了方便的安装脚本。
# 官方一键安装脚本 sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list sudo apt update sudo apt install caddy
第 3 步:配置 Caddy
Caddy 的配置文件非常简单,使用 JSON 或 Caddyfile 格式,这里我们使用更直观的 Caddyfile。
-
创建配置文件:
nano /etc/caddy/Caddyfile
-
在文件中添加以下内容,将
your.domain.com替换成你自己的域名。# 配置你的域名 your.domain.com { # 反向代理到 Google 搜索 reverse_proxy / https://www.google.com:443 { # 关闭 TLS 验证,因为 Google 的证书是给 google.com 的,不是给你的域名 header_up Host {http.reverse_proxy.upstream.hostport} header_up X-Real-IP {http.request.remote_host} header_up X-Forwarded-For {http.request.remote_host} header_up X-Forwarded-Proto {http.request.scheme} } # 可选:你也可以代理其他 Google 服务, # path /drive/* { # reverse_proxy https://drive.google.com:443 # } # path /gmail/* { # reverse_proxy https://mail.google.com:443 # } }解释:
your.domain.com:你的域名。reverse_proxy / ...:将所有路径 () 的请求都转发到后面的地址。https://www.google.com:443:目标服务器地址。header_up ...:这些是设置请求头,告诉 Google 客户端的真实信息,避免 Google 页面显示异常。
-
保存并退出
nano(按Ctrl+X,Y,Enter)。
第 4 步:启动并检查 Caddy
Caddy 通常会自动启动,你可以检查其状态。
# 检查 Caddy 服务状态 sudo systemctl status caddy # 如果没有运行,手动启动 sudo systemctl start caddy sudo systemctl enable caddy # 设置开机自启
在你的浏览器中访问 http://your.domain.com,你应该就能看到 Google 的搜索页面了!Caddy 会自动为你申请并配置免费的 SSL 证书,所以你也可以直接使用 https://your.domain.com。
使用 Nginx (更灵活)
Nginx 是功能更强大的 Web 服务器,配置稍复杂,但更灵活。
第 1 步:安装 Nginx 和 Certbot (用于 SSL)
# 安装 Nginx sudo apt update sudo apt install nginx -y # 安装 Certbot (用于获取免费 SSL 证书) sudo apt install certbot python3-certbot-nginx -y
第 2 步:获取 SSL 证书
# 替换 your.domain.com 为你的域名 sudo certbot --nginx -d your.domain.com
按照提示操作,Certbot 会自动获取证书并配置 Nginx 的 HTTPS,如果一切顺利,它会自动启用 HTTPS。
第 3 步:配置 Nginx 反向代理
-
创建新的 Nginx 配置文件:
nano /etc/nginx/sites-available/google-proxy
-
添加以下配置:
server { listen 80; server_name your.domain.com; # Certbot 没有自动重定向,可以加上这行 return 301 https://$host$request_uri; # 如果你想同时监听 80 和 443,可以去掉上面的 return,并取消下面的 listen 注释 # listen 443 ssl; # ssl_certificate /etc/letsencrypt/live/your.domain.com/fullchain.pem; # ssl_certificate_key /etc/letsencrypt/live/your.domain.com/privkey.pem; } server { listen 443 ssl http2; server_name your.domain.com; # SSL 配置 (Certbot 自动生成) ssl_certificate /etc/letsencrypt/live/your.domain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/your.domain.com/privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # 反向代理配置 location / { proxy_pass https://www.google.com; proxy_set_header Host "www.google.com"; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; # 解决一些网站可能被代理阻止的问题 proxy_ssl_server_name on; } } -
保存文件,然后创建一个符号链接来启用站点:
sudo ln -s /etc/nginx/sites-available/google-proxy /etc/nginx/sites-enabled/
-
测试 Nginx 配置并重新加载:
sudo nginx -t # 检查配置语法 sudo systemctl reload nginx # 重新加载配置
现在访问 https://your.domain.com,你应该也能看到 Google 了。
重要注意事项
- 隐私问题:所有你的 Google 搜索和登录行为都会通过你的代理服务器,请确保你信任你的 VPS 服务商,或者使用自己搭建的服务器。
- 流量成本:代理 Google 会产生大量的网络流量,请确保你的 VPS 带宽足够,并且了解服务商的流量计费政策。
- IP 封禁:如果你的代理服务器 IP 被大量用户滥用,可能会导致该 IP 被 Google 临时封禁(出现 "Checking your browser..." 或 "Our systems have detected unusual traffic" 等提示),如果是个人使用,风险较低。
- 稳定性:免费或廉价的 VPS 可能不稳定,如果代理服务无法访问,可能是 VPS 本身的问题。
- 仅用于学习/合法用途:请确保你使用反向代理的目的是合法合规的。
对于绝大多数用户来说,使用 Caddy 是最简单、最快捷的方案,你只需要一台 VPS 和一个域名,按照上述步骤操作,十几分钟就能搭建好一个稳定、安全的 Google 反向代理。
如果你对服务器配置非常熟悉,并且有更复杂的需求(如代理多个网站、自定义缓存规则等),Nginx 会是更好的选择。
