最近V2Ray更新不断,记忆中,项目默认说明变成了繁体中文,项目名又从V2Ray变成了v2fly,又多了vless、XTLS、fallback等功能,可谓飞速。现在又出现了Xray的项目,笔者觉得脚本再不更新一下有点说不过去了哈哈,这不新的功能它来了。
XRay_bash_onekey
现在此项目为Xray搭建脚本,现作为原V2Ray_ws-tls_bash_onekey项目的一个分支,未来可能会成为主分支。
GitHub地址:链接
两种安装模式
模式一:Nginx+ws+tls模式。利用Nginx进行分流,通讯协议为Websocket+tls。相对传统,可以与CDN兼容,Nginx的存在方便建站的朋友。简单说是Nginx在前,Xray在后,Xray不直接开放给外部。对于主要需要Xray服务的朋友,此模式下流量需要经过Nginx转发,一定程度牺牲性能,若再套用CDN,那么性能损失更大,与之带来的是安全性的提升。
模式二:Xray+Nginx模式。利用Xray的fallback功能,使流量在Xray端分流,Xray无法处理的流量将转交给Nginx处理,通讯协议为XTLS,内部通讯协议为tcp。Xray+Nginx模式利用了大量新技术,不可以与CDN兼容,Nginx的存在主要为了防止探测,可以建站但不推荐。简单说是Xray在前,Nginx在后,Xray直接开放给外部。对于主要需要Xray服务的朋友,此模式下流量直接交由Xray处理,因此效率很高,再加上使用了最近V2Ray主打的XTLS协议,性能更强,但就如trojan一般,此模式无法套用CDN,强行套用后将失去Xray的功能。对于需要建站的朋友,由于流量由Xray分析与转发,性能有所损失,因此不推荐Nginx建站。

安装方式
需要一个属于你自己的域名,并且解析到你所购买的VPS的公网IP上。(在域名服务商添加A地址即可)。之后登录至VPS,运行脚本,按照提示运行即可。
wget -N --no-check-certificate -q -O install.sh "https://raw.githubusercontent.com/paniy/Xray_bash_onekey/main/install.sh" && chmod +x install.sh && bash install.sh
若提示不存在wget命令,请先安装wget。
更新说明(2020年12月11日)
- 只支持VLess协议
- 此脚本与原V2Ray脚本不兼容
- 可以直接输入命令:
idleleo
管理脚本 - 减少直接访问,隐藏代理域名,302跳转至www.idleleo.com(了解配置过程可自行修改)
一些问题的说明:
Q:为什么安装完后访问域名会跳转至无主界?
A:已经在上文中说明这种情况,至于为什么这么改可以看评论30楼,已经较为详细的说明了原因,总之为了提高安全性,减少审查。有能力的小伙伴,推荐自己建站。
Q:生成证书失败是为什么?
A:情况很简单,无法通过域名经过80端口连接服务器。为什么会导致这种情况就不好说了,可能是服务器的80端口的原因,可能是域名没有解析到服务器IP的原因,可能是搭建前就开启CDN的原因等等。
PS:如果遇到问题,先别着急,仔细翻翻评论,说不定有意想不到的收获。
实际测试
以下为模式二的测试,服务器端为谷歌云的香港节点,客户端网速为100M:

Xray简介
Xray, Penetrates Everything. Also the best v2ray-core, with XTLS support. Fully compatible configuration.
GitHub地址:链接
根据官网介绍,Xray完美兼容V2Ray,而且Xray比V2Ray性能更好,在XTLS协议上性能是V2Ray几倍。
XTLS协议简介
VLESS XTLS Direct Mode 引入了 ReadV 增强,减少一层内存 Copy,性能已与 VLESS 无加密裸奔持平(接近于纯流量转发),为传统 VMess WS TLS 方案的五倍、VLESS TCP TLS 的三倍(且测试机器 CPU 均有 AES 指令集,否则差距更大,如硬路由器上),强烈建议测试体验。这或许是当前性能最强的安全代理方式,但并不是上限。
具体测试方式和测试结果见 这里
它是什么
- 简单概括:特殊处理 TLS 流量,不重复加密,提升数倍性能、更省资源。各种移动设备可以省电,路由器的加解密性能也不再是瓶颈。rprx/v2ray-vless/releases 有关于 XTLS Project 原理的一些介绍。
- 原理:XTLS 无缝拼接了内外两条货真价实的 TLS,此时代理本身几乎无需再对数据加解密。VLESS + XTLS 可以理解为是增强版 ECH,即多支持身份认证、代理转发、明文加密、UDP over TCP 等。
- XTLS 本身需要是 TLSv1.3(正常情况下的协商结果),内层 TLS 可以为 1.3 或 1.2(上网时的绝大多数流量),此时特殊功能就会生效(填写 flow 是开启/指定特殊功能,生效是另一码事)。
注意事项
- 为了防止上层应用使用 QUIC,启用 XTLS 时客户端 VLESS 会自动拦截 UDP/443 的请求。若不需拦截,请在客户端填写
xtls-rprx-direct-udp443
,服务端不变。 - 可设置环境变量
V2RAY_VLESS_XTLS_SHOW = true
以显示 XTLS 的输出,适用于服务端与客户端(仅用于确信 XTLS 生效了,千万别设成永久性的,不然会很卡)。 - 不能开启 Mux。XTLS 需要获得原始的数据流,所以原理上也不会支持 WebSocket、不适用于 VMess。此外,UDP over TCP 时,VLESS 不会开启 XTLS 的特殊功能。
相关阅读
V2Ray、Trojan等主流工具安全吗:V2Ray、Trojan等主流工具安全吗?
使用BBR等加速TCP:加速网络 一键部署BBR+BBR魔改+Lotsever(锐速)
V2Ray与Trojan对比:V2Ray / Trojan 传输方式哪个好?(原理对比)
1月11日 13:22 地板
troja*与Xray哪个速度更快呢,应该还是troja*吧,安全性应该是Xray?
1月11日 23:11 1层
不见得,速度只能见仁见智。两者安全性亦未有明确的区别。不过根据现已有项目的发展和目标,xray更有优势。
1月4日 09:33 板凳
v2ray是不更新了吗,推荐更新xray?
1月5日 17:58 1层
新版v2ray已不再支持xtls。
1月3日 14:36 沙发
请问客户端(如V2RayN)怎么设置呢?似乎用v4.33.0的内核无法连接。
1月3日 21:07 1层
需要xray的内核。