Published on

V2ray机场服务端搭建以及客户端使用

Authors

前言

  • 此处只是总结V2ray服务端搭建的学习过程,不涉及具体指导性操作.使用梯子的主要目的是为了学习以及资料的查询.
  • 学习以及尝试搭建过程中搭建的环境以及实例是按量收费的,且学习完毕之后环境以及服务已经全部完整的清除和销毁.
  • 希望各位参照本文档使用梯子的仁兄能科学上网之后,不散布政治敏感,不传播反动违法言论以及梯子搭建,低调再低调.

免费VPN

Cisco(思科)VPN服务通过邮箱注册之后可以获得两小时的梯子使用时间.当其他人通过你的账号分享的链接注册了此梯子之后,作为源的你可以获得三天的一个体验卡,使用之后即可获得三天的梯子使用时间.其他的人注册分享链接每天最多为源提供三个体验卡,即用即有效. 可以通过不断注册QQ邮箱的别名邮箱foxmail邮箱的方式刷体验卡,每天最多刷三个.以此往复循环,可实现永久免费使用.当然,前提是国家没有禁止以及此服务仍在维护的前提下.

VPN或云服务器选择

VPN选择酷润云搬瓦工vultr
访问注册页访问页访问页访问页
提供的服务VPNVPN以及成品梯子VPN以及成品梯子
云服务器选择腾讯云阿里云华为云
访问注册页访问页访问页访问页
提供的服务云服务器云服务器云服务器

  安装系统选择CentOS或者Debian9或以上.安装完成之后拿到IP已经自己设置的账户名以及密码.

  SSH连接工具使用Xshel或者服务商控制台提供的窗口.传输软件使用xftp或者WinScp连接.xshell和xftp提供仅供个人使用的免费版,可自行上网下载.想必要学习此文档的仁兄对这些都是比较了解的,若是不清楚的话自行百度即可.连接等步骤不再赘述.

选择搭建平台的时候,VPN比云服务器性价比稍高一点,区域记得选择海外.本人测试搭建的时候,选择的是酷润云美国硅谷.记得设置安全组放通端口.

服务端搭建

1.SSH连接完成之后,查看curl是否已经安装完成

# 查看curl
curl -V

2.如果显示**curl: command not found **则表示没有安装curl.执行命令进行安装:

# ubuntu/debian 系统
apt-get update -y && apt-get install curl -y

# centos 系统
yum update -y && yum install curl -y

3.若执行上述安装命令无效,则需要获取root权限

sudo su root

4.执行V2Ray服务端一键安装脚本

bash <(curl -s -L https://git.io/v2ray.sh)

请选择 [1-2]:1

(默认协议: TCP): (回车保持默认)

请输入 V2Ray 端口 [1-65535](默认端口: 64621): (回车保持默认)

是否开启广告拦截(会影响性能) [Y/N](默认 [N]): (回车保持默认)

是否配置 Shadowsocks [Y/N](默认 [N]): Y

请输入 Shadowsocks 端口 [1-65535],不能和 V2Ray 端口相同(默认端口: 54040): (回车保持默认)

请输入 Shadowsocks 密码(默认密码: 233blog.com): (输入密码)

请选择 Shadowsocks 加密协议 [1-3]: (回车保持默认)

两次回车之后开始安装

5.查看服务端信息

窗口中的信息建议复制之后保存.

6.下载手机端和PC端的连接工具

已经把需要的工具下载之后上传到GitHub上了,经过测试都是可以正常使用的. 根据情况选择使用包,自述文件里面有包信息. 若需要最新的文件,可自行前往GitHub下载客户端手机端

7.多用户使用配置

V2Ray 的多用户配置可以分为两种情况:

  • V2Ray 端口相同,ID 不同

  • V2Ray 端口不同,ID 也不同 (推荐使用-alterId最好设置为0)

7.1 端口相同ID不同

使用WinScp或者xftp连接之后,编辑 /etc/v2ray/config.json 文件,在“clients”一节中增加新增用户配置。

{
  "log": {
    "loglevel": "info",
    "access": "/var/log/v2ray/access.log",
    "error": "/var/log/v2ray/error.log"
  },
  "inbounds": [{
    "port": 12345,
    "protocol": "vmess",
    "settings": {
      "clients": [
        {
          "id": "6be0aa25-09c1-4d8b-a96f-75cd3485021f",
          "level": 1,
          "alterId": 53
        }, # 逗号不能少
        # 下面是新增的内容
        {
          "id": "2a1292fd-07be-37e7-af20-57668b4a546a",  # id 可以用 /usr/bin/v2ray/v2ctl uuid 生成
          "level": 1, # 这个不用改
          "alterId": 63 # 建议50-150之间的一个整数
        }
        # 新增内容结束
      ]
    }
  }],
  # 下面的内容保持不变

7.2 端口不同ID不同

编辑 /etc/v2ray/config.json 文件,按照“inbounds”格式新增端口以及用户。

{
  "log": {
    "loglevel": "info",
    "access": "/var/log/v2ray/access.log",
    "error": "/var/log/v2ray/error.log"
  },
  "inbounds": [{
    "port": 12345,
    "protocol": "vmess",
    "settings": {
      "clients": [
        {
          "id": "6be0aa25-09c1-4d8b-a96f-75cd3485021f",
          "level": 1,
          "alterId": 0   # 2022-02之后,多用户设置使用此方式时alterId才可生效
        }
      ]
    }
  }, # 逗号不能省,原来这里是"}],"
  # 以下是新增的配置
  {
    "port": 23456, # 端口是1000-65535之间的一个整数
    "protocol": "vmess", # 也可以改成其他协议,如果你知道怎么配置的话
    "settings": {
      "clients": [
        {
          "id": "24813255-228d-b0e0-c3fa-e5d4c9defda1", # id可以用 /usr/bin/v2ray/v2ctl uuid生成
          "level": 1, # 0或1都可以
          "alterId": 0 # 建议50-150之间的一个整数
        }
      ]
    }
  }],
  # 新增内容结束
  # 下面的内容保持不变

配置完成之后记得重启v2ray服务,如果命令失败,则说明配置文件修改有错.

# 重启服务
v2ray restart

v2ray运维命令

  • v2ray info 查看 V2Ray 配置信息
  • v2ray config 修改 V2Ray 配置
  • v2ray link 生成 V2Ray 客户端配置文件链接
  • v2ray textlink 生成 V2Ray 配置信息链接
  • v2ray qr 生成 V2Ray 配置二维码链接
  • v2ray ss 修改 Shadowsocks 配置
  • v2ray ssinfo 查看 Shadowsocks 配置信息
  • v2ray ssqr 生成 Shadowsocks 配置二维码链接
  • v2ray status 查看 V2Ray 运行状态
  • v2ray start 启动 V2Ray
  • v2ray stop 停止 V2Ray
  • v2ray restart 重启 V2Ray
  • v2ray log 查看 V2Ray 运行日志
  • v2ray update 更新 V2Ray
  • v2ray update.sh 更新 V2Ray 管理脚本
  • v2ray uninstall 卸载 V2Ray

参考文章:

2022-02-22更新: 多用户配置失效问题

  近段时间,发现除了服务端创建成功之后获取的Vmess和Shadowsocks两个账号之外,其他配置的多用户账号失效了.在PC端访问时会发现不不能正常访问外网.在手机端访问时会长时间显示测试中,然后报出以下错误:

失败: net/http;request canceled(Client.Timeout exceeded whild awaiting)

io: read/write on closed pipe 
问题排查:
  1. 检查时区是否正常 因为服务端和客户端校验较严格,时间差不允许超过90s
    1. 远程连接VPS
    2. 执行: date -R
    3. 当显示如Tue, 22 Feb 2022 10:17:22 +0800,以**+0800**结尾即为正确时区,否则自行查阅文档修改时区即可.

  1. 多用户使用不同端口 本人配置的多用户是在一个clients下增加不同的对象节点,这种情况下就意味着alterId是不同的.有一篇问题文档中说明,是因为2022年1月似乎启用了MD5加密的导致的.一种比较简单的方式就是保持alterId为0,使用不同端口

修改之后记得重启VPS和V2ray.当然,如果使用不同端口的话,那么VPS的安全组设置是必须放行这些端口的.如果配置还是不起作用,那么可以前往GitHub下载最新手机端apk或者下载最新客户端.若依然存在问题,可执行v2ray log 命令查看日志