[一键VLESS搭建教程2022]使用国外VPS自建 VLESS+Web+WS+TLS 服务器及V2Ray客户端配置实现科学上网

也许知道的人很少,自从2020年5月份V2Ray被爆出存在探测漏洞的Bug后,很多大神开始改进VMess协议。于是,V2Ray官方开发团队也推出VLESS协议,并以打造成下一代科学上网的终极协议为目标,轻便好用。

VLESS是一种无状态的轻量传输协议,与 VMess 不同,虽然其认证方式仍然为 UUID,但 VLESS 并不依赖于系统时间,也不需要 AlterID,它分为入站和出站两部分,作为 V2Ray 客户端和服务器之间的桥梁。我们可以把VLESS理解为Vmess的精简版。与VMess相比,优点在于轻量化,减少多余的算法,减轻cpu和内存资源负载。省去服务端和客户端系统时间差,不需要AlterID配置,再加上http/2最新的http协议组合,网络传输握手次数和网络报头均减少,并启用多路复用等网络优化功能,简直比Trojan协议还要轻量了。

经长期使用和测试,我最推荐的是Jrohy大神的“multi-v2ray 多用户管理脚本”,简单快捷,而且功能强大,代码质量也很高,几乎很少出现问题(这可能跟使用习惯有关系,稳定顺手就好)。

1、注册域名和购买非中国大陆地区的VPS

(1)注册域名

如果你使用“Vmess+TLS+Web+CDN”模式的话,就需要用域名伪装成网站,否则不需要域名。注册域名有两种途径:注册国外免费域名和付费购买域名。

1)注册免费域名

注册免费域名请参考文章 2022年最新的国外免费顶级域名网站Freenom注册免费域名教程与Cloudflare托管解析的方法

2)购买付费域名

购买付费域名推荐 NameSilo(推荐) 或 Namecheap,大部分域名一般不到4美元/第1年,像 .xray 和 .top 这样顶级域名还不到1美元/年,非常划算,第2年重新注册一个新的就可以了。

如果你打算在 NameSilo 注册域名的话,请参考文章 NameSilo – 美国知名域名注册商 | 仅年付0.99/1.99美元 | 域名购买与账户注册图文教程

3)解析域名

注册好域名之后,请把域名解析到你要搭建V2Ray服务器所用VPS对应的IP地址,一般5分钟之内就可以生效,最迟72小时生效。我一直推荐大家使用 Cloudflare 管理域名,解析速度快,基本秒生效,非常方便快捷,而且 Cloudflare 的免费 CDN 很好用,而且搭建自用SS/SSR/V2Ray/Trojan机场经常会用到。

关于互联网域名注册、购买与添加DNS域名解析记录的详细操作教程,请参考文章 互联网域名注册、服务购买与添加域名解析记录及更改DNS服务器的详细图文教程

(2)购买非中国大陆地区的VPS

1)为什么要购买非中国大陆地区的VPS?

因为中国大陆经营的正规VPS提供商都在国家正规备案的,不允许你用VPS搭建V2Ray节点服务器,一旦发现你违规使用会停掉你的VPS,还可能不退款。另外,即使你可以搭建科学上网服务器,而且没有被发现,那么也可能被监控,并有隐私泄露的风险,因为像国内大厂的云产品上面都有监控代码,你未必能清理干净。鉴于以上原因,我建议你选择非天朝公司且不在大陆备案经营的VPS提供商。

2)使用香港或者澳门公司的VPS怎么样?

当然是可以的,但是他们都很贵,而且仍是天朝下辖地区,还是不碰为好。我推荐你选择美国、台湾、日本、新加坡、韩国等地区机房的VPS,甚至欧洲公司的产品,毕竟中国台湾还没有被统一,天朝直接管不了。

通过以上分析和介绍,我相信你也不愿意选择阿里云、腾讯云、百度云和华为云等这样的国内大公司的VPS,最好选择美国西海岸、日本东京或新加坡机房的VPS。

3)用什么VPS搭建VLESS服务器比较好?

国外VPS哪家好?一键搭建VLESS服务器推荐你使用 Vultr(推荐)、搬瓦工(BandwagonHOST) 或 Hostwinds 等大公司的VPS。其中,Vultr在全球拥有23个数据中心,虽然在不同国家和地区的机房数据中心对中国大陆不同地域网络的访问速度和延迟有些差别,但你只需要测试好最适合自己当地网络环境的机房位置即可,因为你可以方便且无限制地免费更换IP,直至找到最适合你的那个数据中心。毋庸置疑,在优质国外VPS服务商中,Vultr是性价比最高、最值得推荐的一家。另外,BandwagonHOST(搬瓦工)在中国大陆的知名度非常高,它的速度和稳定性都很不错,尤其是 CN2 GIA 线路的套餐,但价格非常贵,是同类产品中相对较贵的,性价比一般,而且现在换IP也非常贵。最后,鉴于Hostwinds在国外口碑非常好,服务器安全稳定,还支持免费更换IP,网站不仅支持中文操作界面,而且有中文客服实时在线,所以也是值得一试的。

如果你是老鸟的话,你应该懂得任何一家VPS都有值得推荐的优势。如果你追求速度和稳定性的话,我推荐您使用有中国电信 CN2 GIA、中国联通 CUVIP(AS9929) 或移动CMI,甚至日本软银等高端线路的VPS。其中,由于中国香港、中国台湾、日本和韩国的数据中心更靠近中国大陆,网络延迟相对更低,连接响应速度会更快,但峰值网络带宽并不一定高。虽然这些国家和地区的物理优势明显,但价格也是比较贵,尤其 CN2 GIA 和CU2(AS9929) 线路非常昂贵,不太适合普通用户,所以我们一般选择较多选择美国或欧洲机房的特殊优化或高端线路,性价比相对较高。如果你追求超高性价比的话,我相信Vultr肯定是你最好的选择。

关于 Vultr 的账户注册、套餐购买和VPS服务器系统安装与远程管理的详细使用教程,请参考 最新Vultr账户注册、VPS套餐购买与服务器系统安装以及SSH远程管理的详细图文教程,鉴于图文教程已经非常详尽,我这里就不再赘述,我后面的图文教程均以 Vultr VPS 为例进行演示。

2、远程连接并管理 Vultr VPS 服务器

(1)远程连接VPS服务器

关于 Xshell/Putty 远程连接并管理 Vultr VPS 服务器的详细使用教程,请参考 最新Vultr账户注册、VPS套餐购买与服务器系统安装以及SSH远程管理的详细图文教程,鉴于图文教程已经非常详尽,我这里就不再赘述。

当完成 Vultr 账户注册、套餐购买并成功连接到远程 VPS 之后,我们就可以继续下面的步骤了。

(2)放行VPS服务器端口

在执行VLESS一键安装脚本之前,我们必须在防火墙放行你要开启的服务器端口(我这里以80/443端口为例),否则安装SSL证书会失败。请提前检查你的VPS服务器是否已经放行了你要开放的端口,否则请执行以下操作命令。

1)如果你是 CentOS/Fedora/RedHat 系统,则依次执行以下命令:

firewall-cmd --query-port=端口号/tcp #查看“端口号”是否放行
systemctl start firewalld.service #开启防火墙
firewall-cmd --zone=public --add-port=80/tcp --permanent #放行80端口
firewall-cmd --zone=public --add-port=443/tcp --permanent #放行443端口
systemctl restart firewalld.service #重启防火墙
firewall-cmd --reload #重新载入配置

2)如果你是 Debian/Ubuntu 系统,则依次执行以下命令:

apt-get install iptables #安装iptables
iptables -I INPUT -p tcp --dport 80 -j ACCEPT #放行80端口
iptables -I INPUT -p tcp --dport 443 -j ACCEPT #放行443端口
iptables-save #保存规则
apt-get install iptables-persistent #安装iptables-persistent
netfilter-persistent save
netfilter-persistent reload

3)重启VPS服务器,执行命令:

reboot

3、一键搭建VLESS服务器教程

(1)VLESS+websocket+TLS+Nginx+Website一键脚本(wulabing大佬作品)

此一键搭建脚本为wulabing大佬的作品,模仿互联网最流行的HTTPS协议,支持直接生成伪装网站,扛封锁效果好。

1)安装Git环境

yum install -y git #CentOS安装命令
apt install -y git #Debian安装命令

2)执行VLESS一键安装脚本

wget -N --no-check-certificate -q -O install.sh "https://raw.githubusercontent.com/wulabing/V2Ray_ws-tls_bash_onekey/dev/install.sh" && chmod +x install.sh && bash install.sh

执行上述命令后,如下图所示:

3)VLESS一键脚本安装步骤

我这里分成了[A]、[B]、[C]、[D]、[E]5个步骤进行演示,你可以参照操作。

我们输入数字“1”,即选择“1. 安装 V2Ray (VLESS+Nginx+ws+tls)”,回车后进入安装过程。

如果出现“Do you want to continue? [Y/n]”或其它的提示,我们输入字母“y”即可。

[A] 安装期间还会提示输入域名信息的提示,如“请输入你的域名信息(eg:www.wulabing.com):”,然后我们输入已经解析过度域名,如“vless.example.com”,并输入端口(默认为443)。如下图所示:

当以上绑定的域名和端口填写无误后,回车。然后,进入漫长的Web服务器安装过程,请大家耐心等待。

[B] 后续安装过程中,还会提示“请选择生成的链接种类”,分别是 “1:V2RayNG和V2RayN”和“2:quantumult”,苹果iOS系统用户请选择“2”,否则请选择“1”即可。

[C] 紧接着,还会提示“请选择支持的 TLS 版本(default:3)”,分别是“1:TLS1.1 TLS1.2 and TLS1.3(兼容模式)”、“2:TLS1.2 and TLS1.3(兼容模式)”和“3:TLS1.3 only”,请根据需要选择即可。

其实,如果Web服务器由Nginx换成Caddy会更好,毕竟Caddy更轻量,用时短,安装速度快,成功率更高,而且还会自动更新SSL证书。

[D] 我们再次回到主菜单,选择“11. 安装 4合1 bbr 锐速安装脚本”,既可安装并启用BBR加速模块。

[E] 安装成功后,如果在浏览器访问你绑定的域名,会直接显示伪装成的“3D元素周期表”网页。

经实际安装测试,由于用时较长,Nginx服务器在部分VPS上面安装会出现“[错误] SSL 证书测试签发失败”的错误提示。

(2)multi-v2ray 多用户管理脚本(推荐)

温馨提醒:现在,multi-v2ray 多用户管理脚本已增加支持一键搭建VLESS/VLESS+WS/VLESS+XTLS/Trojan/Xray服务器,功能更强大了。在这里,我推荐您使用 Debian 9/11 或 CentOS 7 系统搭建环境(推荐使用 Debian 11 系统),如果您使用其他系统环境搭建可能会遇到莫名其妙的问题,浪费时间和精力。经测试,使用 Debian 10 搭建,curl组件可能无法正常使用,导致一键脚本安装命令执行不成功,请认真斟酌!!!

在安装 Curl 依赖包过程中,如果出现以下提示,则表示Curl依赖包没有安装成功。如下图所示:

此时,你执行V2Ray一键安装脚本命令,仍旧收到“-bash: curl: command not found”的提示。此时,请执行一下修复命令:apt –fix-broken install(注意是两个英文短杠“-”,而不是一个中文长杠“–”,文章一直显示不正常,我也没找到具体原因),出现“Do you want to continue? [Y/n]”的提示,输入“y”后,回车,稍等片刻,完成后再次执行安装Curl依赖包命令,就能成功安装Curl依赖包了。

1)安装 Curl 依赖包

yum update -y && yum install curl -y #CentOS/Fedora
apt-get update -y && apt-get install curl -y #Debian/Ubuntu

2)执行一键安装脚本命令

source <(curl -sL https://multi.netlify.app/v2ray.sh) --zh

回车执行上述代码,稍等片刻即可安装完成,期间不需要你任何操作。安装完成后,如下图所示:

一键安装脚本默认使用kcp协议,并随机选择伪装方式(上图伪装成了微信视频(wechat-video)模式)。我们复制以上默认生成的vmess链接并添加到V2Ray客户端,既可成功实现科学上网。我这里不建议你使用这种默认的配置方式,我推荐你使用“Vmess+WS+TLS+Web+CDN”模式,既实现了伪装成互联网最普遍的HTTPS数据传输,并使用TLS高强度加密,又实现了对 VPS IP 地址的隐藏保护,更加安全稳定,但是速度会有所下降。

温馨提醒:如果使用“Vmess+WS+TLS+Web+CDN”模式,我们首先要使用 Cloudflare 进行域名解析,添加A记录时,请把小云彩点成灰色,即只使用DNS解析而不使用CDN,否则会造成绑定失败。“v2ray.mydomain.tk”全程只是作为操作演示域名使用,你具体操作时,请使用自己的域名。

3)开启V2Ray一键安装脚本“Vmess+WS+TLS+CDN”模式

我这里分成了[A]、[B]、[C] 3个步骤进行演示,你可以参照操作。

[A] 更改传输方式,启用WebSocket。

我们输入“v2ray”即可进行V2Ray配置管理,然后依次选择“3.更改配置”-“5.更改传输方式”-“3.WebSocket”,然后输入你要伪装的域名,如“v2ray.mydomain.tk”,回车(不需要输入“https/https”,而且域名必须已经成功解析到你正在使用VPS的IP地址,我这里把伪装域名设置成要绑定的域名了,你也可以可以设置成其它的域名,但是这样成功率高)。如下图所示:

[B] 启用TLS,并绑定域名。

我们依次选择“3.更改配置”-“6.更改TLS设置”-“1.开启 TLS”-“1. Let’s Encrypt 生成证书(准备域名)”,然后在“请输入您绑定的域名:”处输入域名,比如“v2ray.mydomain.tk”,回车即可进入SSL证书安装过程,期间无需任何操作,直至完成。如下图所示:

[C] 开启CDN隐藏保护

我们依次选择“3.更改配置”-“11.走CDN(需要域名),然后在“当前组域名为: v2ray.mydomain.tk, 回车继续使用或者输入新的域名:”处,直接回车使用当前域名。接着依次选择“1.443”-“1. Let’s Encrypt 生成证书(准备域名)”,回车,开始再次安装SSL证书(其实,上步已经安装过了),直至最终完成,期间无需任何操作。如下图所示:

当开启“Vmess+WebSocket+TLS+CDN”模式时,我建议使用443端口,伪装成互联网最常见的HTTPS协议的流量,抗封锁能力更强,更安全稳定。

当以上操作均成功完成后,去 Cloudflare 把域名解析的小云朵点亮即可。如下图所示:

你可以使用 “ping v2ray.mydomain.tk” 命令 或 站长工具IP查询进行检查 Cloudflare CDN 是否添加成功。一旦解析成功后,你就可以放肆地科学上网了(其实,不解析成功照样可以科学上网,只是启用 CDN 后更加安全稳定)。如下图所示:

使用站长工具IP查询会更加简单,如下图所示:

当以上方法查询,返回的IP地址是Cloudflare的美国 cloudflare节点时,就表示已经成功开启CDN。

一键安装脚本升级命令(保留配置文件更新)

source <(curl -sL https://multi.netlify.app/v2ray.sh) -k

一键安装脚本卸载命令

source <(curl -sL https://multi.netlify.app/v2ray.sh) --remove

一键安装脚本的V2Ray管理命令行参数

v2ray [-h|--help] [options]
    -h, --help           查看帮助
    -v, --version        查看版本号
    start                启动 V2Ray
    stop                 停止 V2Ray
    restart              重启 V2Ray
    status               查看 V2Ray 运行状态
    new                  重建新的v2ray json配置文件
    update               更新 V2Ray 到最新Release版本
    update.sh            更新 multi-v2ray 到最新版本
    add                  新增mkcp + 随机一种 (srtp|wechat-video|utp|dtls|wireguard) header伪装的端口(Group)
    add [wechat|utp|srtp|dtls|wireguard|socks|mtproto|ss]     新增一种协议的组,端口随机,如 v2ray add utp 为新增utp协议
    del                  删除端口组
    info                 查看配置
    port                 修改端口
    tls                  修改tls
    tfo                  修改tcpFastOpen
    stream               修改传输协议
    cdn                  走cdn
    stats                v2ray流量统计
    iptables             iptables流量统计
    clean                清理日志
    log                  查看日志

4、一键安装并开启BBR加速

(1)安装 wget 依赖包

yum -y install wget #CentOS
apt-get install wget #Ubuntu/Debian

(2)执行BBR加速一键安装脚本命令

cd /usr/src && wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh" && chmod +x tcp.sh && ./tcp.sh

执行以上安装命令后,如下图所示:

我这里选择“2”,“安装 BBRplus版内核”加速。在安装过程中,可能会出现如下提示,用右方向键选“<No>”,然后回车。如下图所示:

安装完成后会提示重启服务器,这时候输入字母“y”,回车后,重启服务器。当服务器启动后,我们再次执行安装命令,选择“7”启用“使用BBRplus版加速”。

5、支持VLESS协议的V2Ray客户端

截至目前,大多数V2Ray客户端都已经支持VLESS协议了,如 V2RayN、V2RayU、V2RayNG 和 Qv2ray 以及 PassWall 等。其中,V2RayN是Windows客户端,V2RayU是MacOS客户端,V2RayNG是Android客户端;Qv2ray是跨平台 V2Ray 客户端,同时支持 Linux、Windows、MacOS 系统,还可以通过插件支持 SSR / Trojan / Trojan-Go / NaiveProxy 等协议,但不支持批量测速,不支持自动更新,有一定的使用门槛;PassWall是支持OpenWrt路由器系统的插件。

6、优质V2Ray机场推荐

如果您是新手小白,或不能成功搭建科学上网代理服务器,或对线路节点的速度和稳定性均有更高需求,那么一灯不是和尚推荐您参考文章 优质高速稳定SS/SSR/Xray/Trojan/V2Ray机场推荐 | 网络加速器梯子推荐,它能帮助您挑选一家最适合您的优质SS/SSR/Trojan/Xray/V2Ray机场梯子。

本文由一灯不是和尚更新于2022年11月24日;如果您有什么意见或建议,请在文章下面评论区留言反馈。

对“[一键VLESS搭建教程2022]使用国外VPS自建 VLESS+Web+WS+TLS 服务器及V2Ray客户端配置实现科学上网”的 90 条回复:

  • 请问multi-v2ray脚本安装之后,iOS可用,android和pc端用不了大概怎么回事,是不是最近严了,试了好多国家的服务器,好多直接就不通,通的还还把443端口封了

    • 对,自从20大之后,墙更高了,尤其对443端口的协议封锁非常猛,所以我不推荐大家继续使用Trojan一类的协议,避开443端口自建代理。至于你说iOS可用,Android和PC端不能用,应该是你客户端设置的问题。

  • ● v2ray.service – V2Ray Service
    Loaded: loaded (/etc/systemd/system/v2ray.service; enabled; vendor preset: disabled)
    Active: failed (Result: start-limit) since Mon 2022-11-21 05:43:40 UTC; 14min ago
    Process: 6371 ExecStart=/usr/bin/v2ray/v2ray -config /etc/v2ray/config.json (code=exited, status=2)
    Main PID: 6371 (code=exited, status=2)

    Nov 21 05:43:39 vultr.guest systemd[1]: v2ray.service: main process exited, code=exited, status=2/INVALIDARGUMENT
    Nov 21 05:43:39 vultr.guest systemd[1]: Unit v2ray.service entered failed state.
    Nov 21 05:43:39 vultr.guest systemd[1]: v2ray.service failed.
    Nov 21 05:43:40 vultr.guest systemd[1]: v2ray.service holdoff time over, scheduling restart.
    Nov 21 05:43:40 vultr.guest systemd[1]: Stopped V2Ray Service.
    Nov 21 05:43:40 vultr.guest systemd[1]: start request repeated too quickly for v2ray.service
    Nov 21 05:43:40 vultr.guest systemd[1]: Failed to start V2Ray Service.
    Nov 21 05:43:40 vultr.guest systemd[1]: Unit v2ray.service entered failed state.
    Nov 21 05:43:40 vultr.guest systemd[1]: v2ray.service failed.

  • 用multi-v2ray的脚本安装后,做设置的时候,提示v2ray restart fail !,查看运行状态,也是activate fail

    • 请使用xray模式,就是在安装完成后,输入命令“xray”,回车,然后会自动安装xray内核,完成后进入xray管理菜单模式。

  • 你好,请问下我按照wuliang的教程安装后,代理一直是连接失败(10月前是没问题的),然后我重装了后还是不行,检测端口、ip什么的都是通的,用的也不是443的端口,这个是怎么回事呢?

    • 因为最近wuliang大佬脚本的那种单一模式被GFW针对了,应该是被精准识别了,所以我推荐你使用multi-v2ray一键脚本,可以方便切换协议和端口。

      • 你好,我按你说的multi-v2ray的脚本试了还是不行,然后我又重新开了一个服务器,再用multi的脚本先开启v2ray试一下,也是无法连接(想试过能连上再启用伪装域名)。请问这样的情况一般是什么原因呢?我用的是vultr的服务器和namesilo的域名

        • 首先,请检查你VPS的IP地址是否联通,搭建好之后,测试连接端口是否联通,最后检查客户端配置,我怀疑你的IP地址本身就是在中国大陆不通的。

  • 你好,我现在遇到一个问题,都一个星期了,装了无数个不同的教程,永远是超时,用搬瓦工,测试搬瓦工自带端口国内外都通,其它所有端口国内国外都不通!也开了端口,就是测试failed,太奇怪了?
    root@beaming-nodes-1:~# iptables -I INPUT -p tcp –dport 80 -j ACCEPT
    root@beaming-nodes-1:~# iptables -I INPUT -p tcp –dport 443 -j ACCEPT
    root@beaming-nodes-1:~# iptables-save
    # Generated by iptables-save v1.6.0 on Sun Oct 30 16:21:09 2022
    *filter
    :INPUT ACCEPT [4:392]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [3:276]
    -A INPUT -p tcp -m tcp –dport 443 -j ACCEPT
    -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT
    -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT
    -A INPUT -p tcp -m tcp –dport 443 -j ACCEPT
    -A INPUT -p tcp -m tcp –dport 443 -j ACCEPT
    -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT
    -A INPUT -p udp -m udp –dport 6736 -j ACCEPT
    -A INPUT -p tcp -m tcp –dport 6736 -j ACCEPT
    -A INPUT -p tcp -m tcp –dport 8088 -j ACCEPT
    -A OUTPUT -p udp -m udp –sport 6736
    -A OUTPUT -p tcp -m tcp –sport 6736
    COMMIT
    到底怎样打开端口,教程里面的命令都不管用。

    • 我的建议就是不要用443端口,不一定使用“VMess/VLESS+WS+Websocket”模式搭建,你可以多试试,因为最近封443端口和对SSL协议重点监控导致容易被封锁,也就是最近放弃Trojan协议搭建代理就好了。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注