目录
前言
谷歌云是一款功能强大的云计算服务,提供丰富的云资源和优质的网络环境。结合 v2ray 的强大功能,我们可以在谷歌云上搭建一个安全稳定的代理服务,实现科学上网。本文将详细介绍如何在谷歌云上配置 v2ray ws tls 的方法,并针对常见问题进行解答,帮助读者顺利完成部署。
准备工作
在开始配置之前,请确保您已经:
- 注册了谷歌云账号,并创建了一个实例
- 拥有一个域名,并将其解析到您的谷歌云实例IP
- 安装了 Xshell 或其他SSH工具
服务器端配置
安装v2ray
-
登录您的谷歌云实例,并使用 Xshell 等SSH工具连接。
-
运行以下命令安装 v2ray:
bash <(curl -L https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh)
-
安装完成后,v2ray 服务会自动启动。您可以使用以下命令检查服务状态:
systemctl status v2ray
配置v2ray
-
编辑 v2ray 配置文件:
nano /etc/v2ray/config.json
-
将以下内容替换到配置文件中:
{ “log”: { “access”: “/var/log/v2ray/access.log”, “error”: “/var/log/v2ray/error.log”, “loglevel”: “info” }, “inbounds”: [ { “port”: 443, “protocol”: “vmess”, “settings”: { “clients”: [ { “id”: “your-uuid”, “alterId”: 64 } ] }, “streamSettings”: { “network”: “ws”, “wsSettings”: { “path”: “/your-path” }, “security”: “tls”, “tlsSettings”: { “certificates”: [ { “certificateFile”: “/path/to/fullchain.pem”, “keyFile”: “/path/to/privkey.pem” } ] } } } ], “outbounds”: [ { “protocol”: “freedom”, “settings”: {} } ] }
-
将
your-uuid
替换为您自己的 UUID,可以使用在线工具生成。 -
将
your-path
替换为您自己的 WebSocket 路径,例如/v2ray
。 -
将
certificateFile
和keyFile
替换为您的SSL证书路径。
申请SSL证书
-
使用 Certbot 申请免费的 Let’s Encrypt SSL证书:
apt-get install certbot certbot certonly –standalone -d your-domain.com
-
证书文件会保存在
/etc/letsencrypt/live/your-domain.com/
目录下,包括fullchain.pem
和privkey.pem
两个文件。
配置Nginx
-
安装 Nginx:
apt-get install nginx
-
编辑 Nginx 配置文件:
nano /etc/nginx/conf.d/default.conf
-
将以下内容替换到配置文件中:
server { listen 80; server_name your-domain.com; return 301 https://$server_name$request_uri; }
server { listen 443 ssl; server_name your-domain.com;
ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA; ssl_prefer_server_ciphers on; location / { proxy_pass http://127.0.0.1:10000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
}
-
将
your-domain.com
替换为您的域名。 -
保存并退出配置文件。
-
重启 Nginx 服务:
systemctl restart nginx
至此,服务器端的配置已经完成。您可以尝试访问 https://your-domain.com
来验证配置是否正确。
客户端配置
Windows
-
下载并安装 V2RayN 客户端:
https://github.com/2dust/v2rayN/releases
-
打开 V2RayN,点击
订阅
->添加订阅源
,输入以下链接:https://raw.githubusercontent.com/v2fly/v2fly-github-io/master/docs/en_US/guide/mkcp.md
-
点击
更新订阅
,选择您需要的节点,然后点击连接
即可。
MacOS
-
下载并安装 V2RayX 客户端:
https://github.com/Cenmrev/V2RayX/releases
-
打开 V2RayX,点击
Preferences
->Servers
,然后点击+
添加一个新的服务器配置。 -
在
Address
中输入您的域名,Port
填写443
,UUID
填写您之前设置的 UUID,Security
选择tls
,Network
选择ws
,WS Path
填写您之前设置的路径。 -
保存配置并连接即可。
Android
-
下载并安装 V2RayNG 客户端:
https://github.com/2dust/v2rayNG/releases
-
打开 V2RayNG,点击右上角的
+
号,选择VMess
。 -
在
Address
中输入您的域名,Port
填写443
,ID
填写您之前设置的 UUID,AlterID
填写64
,Security
选择tls
,Network
选择ws
,WS Path
填写您之前设置的路径。 -
保存配置并连接即可。
iOS
-
下载并安装 Shadowrocket 客户端:
https://apps.apple.com/us/app/shadowrocket/id932747118
-
打开 Shadowrocket,点击
+
号,选择VMess
。 -
在
Server
中输入您的域名,Port
填写443
,UUID
填写您之前设置的 UUID,alterId
填写64
,encryption
选择auto
,Network
选择ws
,wsPath
填写您之前设置的路径,tls
选择tls
。 -
保存配置并连接即可。
FAQ
为什么连接不了?
- 检查您的服务器是否正常运行,并且 v2ray 服务已经启动。
- 确保您的防火墙已经开放 443 端口。
- 检查您的配置文件是否正确,特别是 UUID 和 WebSocket 路径。
- 尝试重启 v2ray 和 Nginx 服务。
为什么速度很慢?
- 检查您的网络环境是否存在限制或干扰。
- 尝试更换其他节点或服务器位置。
- 优化 Nginx 配置,例如开启 HTTP/2 等。
如何更新v2ray?
-
运行以下命令更新 v2ray:
bash <(curl -L https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh)
-
重启 v2ray 服务:
systemctl restart v2ray
如何查看日志?
-
查看 v2ray 日志:
tail -n 100 /var/log/v2ray/access.log tail -n 100 /var/log/v2ray/error.log
-
查看 Nginx 日志:
tail -n 100 /var/log/nginx/access.log tail -n 100 /var/log/nginx/error.log