V2Ray一键脚本

2020.12.10更新:最新版V2ray-core已经移除了XTLS,如果你要使用XTLS技术,推荐用 Xray一键脚本

V2ray一键脚本使用教程

1. 准备一个境外服务器,想服务器速度快请参考 搬瓦工VPS购买教程 或从  CN2 GIA VPS商家推荐 选购,想ip被封后免费换请参考:购买vultr服务器超详细图文教程

注意:目前CentOS7系统已经到生命周期,不建议使用该系统,可能会导致脚本运行失败!建议使用Debian或者Ubuntu系统。

如果用VMESS+WS+TLS或者VLESS系列协议,则还需一个域名。对域名没有要求,国内/国外注册的都可以,不需要备案,不会影响使用,也不会带来安全/隐私上的问题。购买域名可参考:Namesilo购买域名详细教程

值得一提的是本V2ray一键脚本支持ipv6 only服务器,但是不建议用只有ipv6的VPS用来科学上网。

2. 如果vps运营商开启了防火墙(阿里云、Ucloud、腾讯云、AWS、GCP等商家默认有,搬瓦工/hostdare/vultr等商家默认关闭),请先登录vps管理后台放行80和443端口,否则可能会导致获取证书失败。此外,本脚本支持上传自定义证书,可跳过申请证书这一步,也可用在NAT VPS上。

3. ssh连接到服务器。Windows系统请参考 Bitvise连接Linux服务器教程,mac用户请参考 Mac电脑连接Linux教程

4. 复制(或手动输入)下面命令到终端:

bash <(curl -sL https://raw.githubusercontent.com/daveleung/hijkpw-scripts-mod/main/xray_mod1.sh)

按回车键,将出现如下操作菜单。如果菜单没出现,CentOS系统请输入 yum install -y curl,Ubuntu/Debian系统请输入 apt install -y curl,然后再次运行上面的命令:

V2ray一键脚本安装菜单

V2ray一键脚本安装菜单

目前V2ray一键脚本支持以下功能:

  • VMESS,即最普通的V2ray服务器,没有伪装,也不是VLESS
  • VMESS+KCP,传输协议使用mKCP,VPS线路不好时可能有奇效
  • VMESS+TCP+TLS,带伪装的V2ray,不能过CDN中转
  • VMESS+WS+TLS,即最通用的V2ray伪装方式,能过CDN中转,推荐使用
  • VLESS+KCP,传输协议使用mKCP
  • VLESS+TCP+TLS,通用的VLESS版本,不能过CDN中转,但比VMESS+TCP+TLS方式性能更好
  • VLESS+WS+TLS,基于websocket的V2ray伪装VLESS版本,能过CDN中转,有过CDN情况下推荐使用
  • VLESS+TCP+XTLS,目前最强悍的VLESS+XTLS组合,强力推荐使用(但是支持的客户端少一些)
  • trojan,轻量级的伪装协议
  • trojan+XTLS,trojan加强版,使用XTLS技术提升性能

注意:目前一些客户端不支持VLESS协议,或者不支持XTLS,请按照自己的情况选择组合

5. 按照自己的需求选择一个方式。例如6,然后回车。接着脚本会让你输入一些信息,也可以直接按回车使用默认值。需要注意的是,对于要输入伪装域名的情况,如果服务器上有网站在运行,请联系运维再执行脚本,否则可能导致原来网站无法访问!

VLESS+TCP+XTLS一键脚本输入信息

VLESS+TCP+XTLS一键脚本输入信息

6. 脚本接下来会自动运行,一切顺利的话结束后会输出配置信息:

VLESS+TCP+XTLS一键脚本输出信息

VLESS+TCP+XTLS一键脚本输出信息

注意,脚本不适用最新版,原因是脚本在安装v2ray过程中,第822行默认从(https://github.com/v2fly/v2ray-core/releases/)抓取最新版本。解压后cp到对应位置,目前的最新版本为v5.1.0。该版本解压后,没有v2ctl文件,copy失败后,导致脚本意外终止,请作者予以修正。

脚本未修正前的临时解决方法:
wget https://raw.githubusercontent.com/daveleung/hijkpw-scripts-mod/main/v2ray_mod1.sh
chmod a+x v2ray_mod1.sh
vi v2ray_mod1.sh
(将822行中的${NEW_VER}修改为v4.45.2)
./v2ray_mod1.sh

到此服务端配置完毕,服务器可能会自动重启(没提示重启则不需要),windows终端出现“disconnected”,mac出现“closed by remote host”说明服务器成功重启了。

对于VLESS协议、VMESS+WS+TLS的组合,网页上输入伪装域名,能正常打开伪装站,说明服务端已经正确配置好。如果运行过程中出现问题,请在本页面下方查找解决方法或留言。

V2ray一键脚本注意事项

服务端配置好后,如果想使用CloudFlare等CDN中转(必须是WS版才可以),请参考:使用cloudflare中转流量,拯救被墙ip

本脚本默认使用的加速技术是BBR,换成魔改BBR/BBR Plus/锐速清参考:安装魔改BBR/BBR Plus/锐速(Lotserver)

如果伪装站类型没有你满意的,比如你想搭建WordPress博客,请参考:V2ray伪装建站教程

对于使用TLS的方式,脚本默认会申请域名证书,证书存放在和V2ray配置文件同一个文件夹内(即/etc/v2ray目录下)。证书会自动更新,如果客户端突然无法使用,请打开伪装网站查看是否能正常打开。如果证书已过期,请再次运行上面的脚本重新配置。

最后,刚搭建好V2ray后不要猛上流量,否则会导致被限速、端口被墙,严重可能导致ip被墙。

客户端下载

接下来是科学上网最后一步:下载客户端,并参考页面中的配置教程进行配置:

v2ray windows客户端下载

v2ray安卓客户端下载

v2ray mac客户端下载

v2ray ios客户端下载

下载客户端配置好后,就可以愉快的上外网了!

参考

1. v2ray教程

2. VLESS协议介绍及使用教程

《V2Ray一键脚本》上有392条评论

  1. 安装证书失败,如何处理
    /dev/fd/63:行556: /root/.acme.sh/acme.sh: 没有那个文件或目录
    /dev/fd/63:行557: /root/.acme.sh/acme.sh: 没有那个文件或目录
    /dev/fd/63:行559: /root/.acme.sh/acme.sh: 没有那个文件或目录
    获取证书失败,请复制上面的红色文字到 https://hijk.art 反馈

  2. 搭建在自己服务器以后,自己服务器上的其他站点都进不去了,显示”你的连接不是专用连接”

  3. BBR模块已安装
    v2ray启动失败,请检查日志或查看端口是否被占用!

    V2ray运行状态:已安装 未运行
    V2ray配置文件: /etc/v2ray/config.json
    V2ray配置信息:
    协议: VMess
    root@riben2:~#
    换了几个端口都不行,请问这是什么情况

  4. 大佬,请问为什么有时候Nginx会突然关闭然后重启了下服务器又正常了?

  5. v2rayN更新到6.x后vless配置的flow、tls选项不一致。5.x版本的匹配,6.x不适配这个脚本吗

  6. 安装nginx…
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    Could not retrieve mirrorlist http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7 error was
    12: Timeout on http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7: (28, ‘Connection timed out after 30001 milliseconds’)
    * base: veronanetworks.mm.fcix.net
    * elrepo-kernel: repos.lax-noc.com
    * epel: irltoolkit.mm.fcix.net
    * extras: la.mirrors.clouvider.net
    * updates: centos.mirror.ndchost.com
    Package epel-release-7-14.noarch already installed and latest version
    Nothing to do
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    Could not retrieve mirrorlist http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7 error was
    12: Timeout on http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7: (28, ‘Connection timed out after 30002 milliseconds’)
    * base: veronanetworks.mm.fcix.net
    * elrepo-kernel: repos.lax-noc.com
    * epel: irltoolkit.mm.fcix.net
    * extras: la.mirrors.clouvider.net
    * updates: centos.mirror.ndchost.com
    Package 1:nginx-1.20.1-10.el7.x86_64 already installed and latest version
    Nothing to do
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    Could not retrieve mirrorlist http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7 error was
    12: Timeout on http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7: (28, ‘Connection timed out after 30001 milliseconds’)
    * base: veronanetworks.mm.fcix.net
    * elrepo-kernel: repos.lax-noc.com
    * epel: irltoolkit.mm.fcix.net
    * extras: la.mirrors.clouvider.net
    * updates: centos.mirror.ndchost.com
    Package socat-1.7.3.2-2.el7.x86_64 already installed and latest version
    Package 1:openssl-1.0.2k-26.el7_9.x86_64 already installed and latest version
    Nothing to do
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    Could not retrieve mirrorlist http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7 error was
    12: Timeout on http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7: (28, ‘Connection timed out after 30000 milliseconds’)
    * base: veronanetworks.mm.fcix.net
    * elrepo-kernel: repos.lax-noc.com
    * epel: irltoolkit.mm.fcix.net
    * extras: la.mirrors.clouvider.net
    * updates: centos.mirror.ndchost.com
    Package cronie-1.4.11-25.el7_9.x86_64 already installed and latest version
    Nothing to do
    /dev/fd/63: line 579: /root/.acme.sh/acme.sh: No such file or directory
    /dev/fd/63: line 580: /root/.acme.sh/acme.sh: No such file or directory
    /dev/fd/63: line 590: /root/.acme.sh/acme.sh: No such file or directory
    获取证书失败,请复制上面的红色文字到 https://www.hicairo.com 反馈

    请问这种情况怎么解决呢?

  7. There are no enabled repos.
    Run “yum repolist all” to see the repos you have.
    You can enable repos with yum-config-manager –en
    /dev/fd/63: line 517: /etc/yum.repos.d/nginx.repo:
    There are no enabled repos.
    Run “yum repolist all” to see the repos you have.
    You can enable repos with yum-config-manager –en
    Nginx安装失败,请到 https://www.hicairo.com 反馈,
    你好,请问这个怎么处理

  8. 按照上面的步骤都搞好了,就是安卓机客户端连接后上不了网,这是什么情况啊。

  9. 你好,请问伪装的域名现在是504错误是什么原因?但是外网能正常使用。

  10. 请教,为什么在安装脚本时最后显示443端口被占用而安装失败
    但在电脑上查看过,没有进程占用

      1. 服务器上查到了 但杀不掉 关掉一个又出来一个
        我在装脚本的时候选了非443的端口 但是还是没有用 仍然显示443被占用 无法安装成功
        有什么办法不?谢谢!

  11. 大佬好,请教下搭建的VLESS+WS+TLS (BBR提速)套CF的情况下网速还是很慢,即使测试的下载速度达到平均3M/S。请问换成 VMESS+WS+TLS套CF的话网速会不会快一些?感谢回答!

  12. 大佬请教下VLESS+WS+TLS(可过cdn)已经搭建成功,但是V2rayN报错,请问如何解决?非常感谢!

    failed to handler mux client connection > v2ray.com/core/proxy/vmess/outbound: connection ends > v2ray.com/core/proxy/vmess/outbound: failed to read header > v2ray.com/core/proxy/vmess/encoding: failed to read response header > websocket: close 1000 (normal)

  13. 大佬,请问这样算是Socat安装成功吗?为什么一键脚本依然提示没有安装socat呢?感谢回答!

    Ign http://security.debian.org jessie/updates InRelease
    Ign http://security.debian.org jessie/updates Release.gpg
    Ign http://security.debian.org jessie/updates Release
    Ign http://security.debian.org jessie/updates/main Sources/DiffIndex
    Ign http://security.debian.org jessie/updates/main amd64 Packages/DiffIndex
    Ign http://http.us.debian.org jessie InRelease
    Ign http://http.us.debian.org jessie Release.gpg
    Ign http://http.us.debian.org jessie Release
    Ign http://http.us.debian.org jessie/main Sources/DiffIndex
    Ign http://http.us.debian.org jessie/main amd64 Packages/DiffIndex
    Hit http://nginx.org jessie InRelease
    Get:1 http://nginx.org jessie/nginx Sources [16.2 kB]
    Ign http://http.us.debian.org jessie/main Translation-en
    Err http://http.us.debian.org jessie/main Sources
    404 Not Found [IP: 64.50.233.100 80]
    Err http://http.us.debian.org jessie/main amd64 Packages
    404 Not Found [IP: 64.50.233.100 80]
    Ign http://security.debian.org jessie/updates/main Translation-en
    Get:2 http://nginx.org jessie/nginx amd64 Packages [18.1 kB]
    Err http://security.debian.org jessie/updates/main Sources
    404 Not Found [IP: 151.101.66.132 80]
    Err http://security.debian.org jessie/updates/main amd64 Packages
    404 Not Found [IP: 151.101.66.132 80]
    Ign http://nginx.org jessie/nginx Translation-en
    Fetched 34.2 kB in 1s (25.7 kB/s)
    W: Failed to fetch http://security.debian.org/dists/jessie/updates/main/source/Sources 404 Not Found [IP: 151.101.66.132 80]

    W: Failed to fetch http://security.debian.org/dists/jessie/updates/main/binary-amd64/Packages 404 Not Found [IP: 151.101.66.132 80]

    W: Failed to fetch http://http.us.debian.org/debian/dists/jessie/main/source/Sources 404 Not Found [IP: 64.50.233.100 80]

    W: Failed to fetch http://http.us.debian.org/debian/dists/jessie/main/binary-amd64/Packages 404 Not Found [IP: 64.50.233.100 80]

    E: Some index files failed to download. They have been ignored, or old ones used instead.

  14. 大佬你好,这有什么办法解决哈:

    WARNING: The following packages cannot be authenticated!
    socat
    E: There are problems and -y was used without –force-yes

  15. 大佬你好,请问到了这步卡住了怎么解决哈?是要使用“~/.acme.sh/acme.sh –issue -d 域名 –nginx # 如果是apache,换成 –apache”来签发证书吗?感谢回答!

    Changed default CA to: https://acme-v02.api.letsencrypt.org/directory
    [Sat May 6 20:14:03 CST 2023] Using CA: https://acme-v02.api.letsencrypt.org/directory
    [Sat May 6 20:14:03 CST 2023] Run pre hook:’systemctl stop nginx’
    [Sat May 6 20:14:03 CST 2023] Please install socat tools first.
    [Sat May 6 20:14:03 CST 2023] _on_before_issue.

  16. 大佬,请问 Nginx安装失败是什么原因呢?非常感谢回答!

    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    The following extra packages will be installed:
    fontconfig-config fonts-dejavu-core libfontconfig1 libgd3 libgeoip1 libjbig0 libjpeg62-turbo libtiff5 libvpx1 libxml2
    libxpm4 libxslt1.1 nginx-common nginx-full
    Suggested packages:
    libgd-tools geoip-bin fcgiwrap nginx-doc ssl-cert
    Recommended packages:
    geoip-database xml-core
    The following NEW packages will be installed:
    fontconfig-config fonts-dejavu-core libfontconfig1 libgd3 libgeoip1 libjbig0 libjpeg62-turbo libtiff5 libvpx1 libxml2
    libxpm4 libxslt1.1 nginx nginx-common nginx-full
    0 upgraded, 15 newly installed, 0 to remove and 7 not upgraded.
    Need to get 4536 kB of archives.
    After this operation, 11.5 MB of additional disk space will be used.
    WARNING: The following packages cannot be authenticated!
    libxml2 fonts-dejavu-core fontconfig-config libfontconfig1 libjpeg62-turbo libjbig0 libtiff5 libvpx1 libxpm4 libgd3
    libgeoip1 libxslt1.1 nginx-common nginx-full nginx
    E: There are problems and -y was used without –force-yes

发表回复

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