Xray: Vless-gRPC-tls-cdn
- 平台: Windows 10 Pro
- 工具: Ubuntu Server , 域名 , cloudflare
Xray 区别于 V2ray,支持 toml 格式的配置文件,个性化 uuid ;vless 区别于 vmess ;gRPC:谷歌版 RPC ,服务器与客户端高效通信框架;tls:套 tls 更安全的方案!这种组合方式可以躲在 CloudFlare 后面,即使被墙 IP 也可以通过优选 Cloudflare 边缘 ip 后获得良好体验! 成为继 v2ray-ws-tls-cdn 之后的又一炙手可热的组合!
域名交给 Cloudflare
去哪里注册域名?我在下面贴一个链接,这里就不再详细说明如何注册自己的域名了。域名注册完成之后,需要将域名交给 cloudflare 。在 cloudflare 的控制面板当中添加新注册的域名。
https://namecheap.pxf.io/QOOqmz
https://dash.cloudflare.com/
修改名称服务器
在 namecheap 控制台将默认的名称服务器改为 cloudflare 指定的名称服务器
Domain -> NAMESERVERS -> custom DNS
具体名称服务器以 Cloudflare 显示为例。
注册 vps 账号
需要有一台 VPS ,这里以 Vultr 的 VPS 为例,注册链接放在下面详细注册过程略。因为 Vultr 服务器大多数都是被墙的 IP,所以这篇文章是 Vultr 的特别版,不需要使用任何桌面版 ssh 工具连接服务器,而是使用 Vultr 控制面板当中的 Startup Script 工具。在本文第 10 步骤完成之后,将在 Vultr 新购买的 VPS 的 IP,添加 A 记录,设置域名解析,操作如图,这里直接将云朵调为橙色。
https://www.vultr.com/?ref=7369067
修改 SSL/TLS 加密模式
接着在 SSL/tls 面板当中,将加密模式设置为 完全(严格) ,如图所示。
创建 CDN 专用证书
切换到原服务器选项,点击创建证书。
设置私钥类型
私钥类型选择 ecc ,其他保持默认不变,可以看到证书的时效期是 15 年,直接点击创建。
备份源证书和私钥
密钥格式设置为 PEM ,分别将源证书以及私钥保存待用。务必备份,此界面关闭之后就无法再查看私钥了。
Vultr 后台创建自运行脚本
Vultr 的 Startup Script 功能,即服务器系统部署完成后就会自动运行这个脚本程序。
自运行脚本设置
脚本名称设置为 gRPC、类型设置为 boot、粘贴下面的代码块。黑色高亮部分需要自定义修改。 ID 就是密码、 Servicename 是明文设置为简单的字符即可,源证书以及私钥为本文第 7 步骤中所说的备份待用。
#!/bin/sh
# Xray Installation
wget -O /usr/local/bin/xray https://github.com/none-blue/xray-amd64/raw/main/xray
chmod +x /usr/local/bin/xray
cat <<EOF > /etc/systemd/system/xray.service
[Unit]
Description=The Xray Proxy Serve
After=network-online.target
[Service]
ExecStart=/usr/local/bin/xray -c /etc/xray/serve.toml
ExecStop=/bin/kill -s QUIT $MAINPID
Restart=always
RestartSec=15s
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable xray
# Xray Configuration
# id = "none.blue" and serviceName = "page" should custom
mkdir -p /etc/xray
cat <<EOF > /etc/xray/serve.toml
[log]
loglevel = "none"
[[inbounds]]
port = 443
protocol = "vless"
[inbounds.settings]
decryption = "none"
[[inbounds.settings.clients]]
id = "none.blue"
[inbounds.streamSettings]
network = "grpc"
security = "tls"
[inbounds.streamSettings.grpcSettings]
serviceName = "page"
[inbounds.streamSettings.tlsSettings]
alpn = "h2"
[[inbounds.streamSettings.tlsSettings.certificates]]
certificateFile = "/etc/xray/cert.pem"
keyFile = "/etc/xray/key.pem"
[[outbounds]]
protocol = "freedom"
EOF
# pem fortmat certificate from cloudflare
cat <<EOF > /etc/xray/cert.pem
-----BEGIN CERTIFICATE-----
. . .
-----END CERTIFICATE-----
EOF
# pem fortmat private key from cloudflare
cat <<EOF > /etc/xray/key.pem
-----BEGIN PRIVATE KEY-----
. . .
-----END PRIVATE KEY-----
EOF
systemctl start xray
等待服务部署完成
在选择服务器时,需要注意本文的方法不适用于纯 ipv6。VPS 机房建议选择 High Frequency - 美国洛杉矶 - $6,操作系统 ubuntu 20.10 x64 ,千万不要忘记勾选 gRPC 哈!Enter server label 设置为 gRPC,最后点击 Deploy Now 即可。之后静待 5-10 mins 不需要任何操作,即完成服务器端部署。
客户端 V2rayN 示例
Windows 上使用 chocolatey 包管理工具安装 V2rayN,在其设置当中找到内核设置,选择类型为 Xray_core。点击左上角服务器,选择添加 Vless 服务器,设置参考下图。
choco install v2rayn --version=4.13 -y
Cloudflare 优选 IP
关闭所有代理软件,使用 cloud flare 优选工具,筛选出速度较快的 IP 地址。克隆当前 gRPC 节点,更换服务器地址为优选 IP 地址,指定 sni 为自己设置的解析域名,参考如下: