面向新手的V2Ray搭建指南

渐渐发现有很多新人开始尝试自己搭建 V2Ray,但是由于缺少 Linux 的常识,并且很多地方都是英文,所以会遇到许多的问题,也不知道哪里错了而如何搜索。所以本文就是对一个从未接触过命令行的新人说的话,所以本文尽量用图片详细的描述各种操作。

本文的内容大纲和目标如下:

  1. 获得一个VPS(注册与购买)
  2. 使用 SSH 连接 VPS,并使用自动脚本安装 V2Ray
  3. Windows 系统下如何使用 V2Ray 并成功的访问 Google

一、获得一个VPS

如果你已经拥有 VPS 请跳过这个章节,直接阅读 1-2 部分如何使用 SSH 连接 VPS,或者第二章如何安装 V2Ray。

Vultr 是一个比较不错的 VPS 商家,所以这里直接讲 Vultr 的注册,使用支付宝充值并创建一个 Ubuntu系统的 VPS。

1-1注册

首先我们打开 Vultr官网,填写邮箱和密码,勾选复选框后就可以点击创建用户了.需要注意的是,密码需要达到规定强度,否则注册不通过:

  1. 至少10个字符
  2. 至少一个小写字符
  3. 至少一个大写字符
  4. 至少一个数字

简单来说,就是密码长度至少十位,包含大小写字母和数字。

就这么简单的我们已经注册好了 Vultr 账户,当然还需要登陆我们的邮箱,验证我们的账户,否则之后无法创建 VPS。

接着我们需要充值钱,以便开一个 VPS。

Vultr充值

好了,充值过程非常简单,这里我充值了 $10,接着会自动跳转到创建 VPS 页面。首先就是选择机房,我仅推荐洛杉矶(Los Angeles)和西雅图(Seattle)。

注意,不同的机房可能导致接下来展示的型号也不同,比如写文章的时候洛杉矶机房 $3.5 这款没货,但是西雅图机房却有 $3.5 这款。他们接下来会补货的,如果没有可以选择其他款。当然仅仅搭建 V2Ray 我们使用 $3.5 这款完全足够。

选择VPS机房地点

接着是选择系统类型,目前是推荐使用 Ubuntu18.04.

目前洛杉矶机房是没有 $3.5 美元的这款了,但是西雅图是有的,我这里是选择 $5 这款继续往下。

接下来勾选上 Enable IPV6 就可以开始创建了。

1-2连接VPS

经过上面的操作已经创建VPS了,当然这需要一两分钟的时间来完成这个过程。

当你看到 Running 时就说明已经在运行了,好了我们开始连接它,点 Manage 进去查看这个实例的详细信息。

这里 IP 被我马赛克了,我们点击复制密码后,就开始连接这个VPS。首先右键开始菜单, 在弹出的选项中打开 Windows Powershell,然后输入命令。

ssh root@8.8.8.8

把命令中的 8.8.8.8 修改成你自己的主机 IP,回车执行命令。然后会提示你从未连接过这个主机,你确定要继续连接吗,这里我们输入 yes 回车。接着会让你输入密码,注意为了保护密码安全,我们输入的密码是不显示的,不要以为没有输入进去,输入(看不见的)密码后直接回车提交。

Vultr 默认生成的密码非常复杂,所以选择复制密码后我们在 Powershell 窗口鼠标右键一下就已经粘贴进去了。

这是我们登陆成功后的样子,如果想要退出登陆需要输入exit命令。

二、V2Ray 安装

bash <(curl -L -s https://install.direct/go.sh)

官方提供的安装脚本让“一键安装”成为可能,复制这行命令,在 PowerShell 中右键粘贴,然后回车执行。

注意,这里的端口号和 UUID 我们需要记下来。就这样,安装过程结束~我们使用一条命令运行 V2Ray。

systemctl start v2ray

三、V2Ray使用

V2Ray 支持各种平台,这里以 Windows 平台为例,演示如何使用。

3-1下载

我们在 Github 下载 V2Ray,打开链接 https://github.com/v2ray/v2ray-core/releases ,往下翻找到 v2ray-windows-32.zip,意思为这个是 Windows 32位系统的客户端,如果你的系统是 64 位当然可以选择 v2ray-windows-64.zip。

3-2配置

下载完成后,我们找一个地方进行解压,这里我是在 C 盘创建一个文件夹 tools,然后把 V2Ray 解压到其中。进入我们解压好的文件夹修改 config.json 文件,删除原先的内容并完整的复制下方内容粘贴进去。

{
  "log": {
    "loglevel": "warning",
    "access": "access.log",
    "error": "error.log"
  },

  "inbound": {
    "port": 1080,
    "listen": "127.0.0.1",
    "protocol": "socks",
    "settings": {
      "auth": "noauth"
    },  
    "sniffing": {
      "enabled": true,
      "destOverride": ["http", "tls"]
    }
  },

  "inboundDetour": [
    {
      "port": 8080,
      "listen": "127.0.0.1",
      "protocol": "http",
      "settings": {
        "auth": "noauth"
      },  
      "sniffing": {
        "enabled": true,
        "destOverride": ["http", "tls"]
      }
    }

  ],

  "outbound": {
    "tag": "proxy-vmess",
    "protocol": "vmess",
    "settings": {
      "vnext": [
        {
          "address": "8.8.8.8", // 修改成自己的 IP
          "port": 37761, //这里需要修改
          "users": [
            {
              "id": "daw1dwa-8d1a-40f7-8ad0-e3e35cd38297", //这里需要修改
              "alterId": 64
            }
          ]
        }
      ]
    }
  },

  "outboundDetour": [
    {
      "protocol": "freedom",
      "settings": {},
      "tag": "direct"
    },

    {
      "protocol": "blackhole",
      "settings": {},
      "tag": "block"
    }
  ],

  "dns": {
    "hosts": {
    },
    "servers": [
        "8.8.8.8",
        "8.8.4.4",
        "9.9.9.9"
    ]
  },

  "routing": {
    "strategy": "rules",
    "settings": {
      "domainStrategy": "IPIfNonMatch",
      "rules": [
        {
          "type": "field",
          "outboundTag": "proxy-vmess",
          // 配置默认跳过国内网站,如果你需要代理国内网站,请在下面按照 Json 格式添加域名
          "domain": [
            "domain:cnblogs.com"
          ]

        },
        
        {
          "type": "field",
          "outboundTag": "direct",
          "domain": [
            "geosite:cn"
          ],
          "ip": [
            "geoip:cn"
          ]
        }
      ]
    }
  }
}

上述配置中仅需要把 IP、 port 和 id(UUID) 修改成之前安装时的内容,保存后直接运行 v2ray.exe。把你的系统代理设置成 socks5 127.0.0.1:1080 或者 http 127.0.0.1:8080 ,就可以正常使用了。我的上述配置会自动跳过国内网站和IP,也就是说即使你开了全局代理访问百度依然是直连。

此时此刻 V2Ray 客户端已经正常运行,我们配置一下系统,让它使用我们的代理即可。

这里一张图讲解 Win10 设置系统代理的方法:

打开设置——网络和 Internet——代理,进行如上设置即可。可以看的出来,这里我是使用的 http 127.0.0.1:8080,而不是 socks 协议,因为系统对 http 代理的支持更好。

设置完成后,你对一切都非常满意,但是觉得 V2Ray 的那个黑糊糊的命令行窗口十分碍眼,OK,关闭这个窗口,双击 wv2ray.exe 运行即可。二者完全一样,只是 wv2ray.exe 没有窗口。

3-3开机运行

最后你还想要它能开机自己启动,而不是自己每次都要点,so easy。按下快捷键 WIN+R,输入 shell:startup 回车,这个时候会打开一个文件夹,这个文件里中放入任何程序都会开机时运行。

当然不能直接把 wv2ray.exe 直接放进去,我们对着它右键——创建快捷方式,把创建的快捷方式放入到那个文件夹中就完成了。

“面向新手的V2Ray搭建指南”的29个回复

  1. 您的连接不是私密连接
    攻击者可能会试图从 http://www.google.com 窃取您的信息(例如:密码、通讯内容或信用卡信息)。了解详情
    NET::ERR_CERT_COMMON_NAME_INVALID

    您可以选择向 Google 发送一些系统信息和网页内容,以帮助我们改进安全浏览功能。隐私权政策
    http://www.google.com 通常会使用加密技术来保护您的信息。Google Chrome 此次尝试连接到 http://www.google.com 时,此网站发回了异常的错误凭据。这可能是因为有攻击者在试图冒充 http://www.google.com,或 Wi-Fi 登录屏幕中断了此次连接。请放心,您的信息仍然是安全的,因为 Google Chrome 尚未进行任何数据交换便停止了连接。

    您目前无法访问 http://www.google.com,因为此网站使用了 HSTS。网络错误和攻击通常是暂时的,因此,此网页稍后可能会恢复正常。

      1. 我这个搭建的是错误的嘛?我按照好几个教程都试了一遍,最后都是都是这个结果,我不知道为什么,现在还是没有成功 ,我以前没接触过linux 对命令不熟悉

        1. 你的服务端搭建应该是成功的,请确认你的客户端配置是否和我一致,按照文中的客户端配置是可以避免 DNS 污染的。

    1. 请注意阅读文章,我已经对此进行了说明,Linux 系统为了避免密码泄露,不显示密码这是一种防护措施。

      造成的效果就是,当你输入内容不会进行显示,很多新人都对此感到困惑,所以我在文中特意进行说明。你直接输入密码便是,之后回车自然会提交密码进行登陆的。

      1. 您好 谢谢您之前的解答 粗心给您造成了麻烦很抱歉
        但是仍然出现了问题,在修改了config.json 文件后运行v2ray.exe时只是出现了一个类似dos的窗口闪了一下
        截图看了一下内容为:
        V2Ray 4.5.0(Po) 20181116
        A unified platform for anti-censorship
        twitter的访问界面是:
        无法访问此网站 twitter.com 的响应时间过长。
        请试试以下办法:

        检查网络连接
        检查代理服务器和防火墙
        运行 Windows 网络诊断
        ERR_CONNECTION_TIMED_OUT

        使用systemctl status v2ray检查服务端的结果是
        Active: inactive (dead)
        请问为什么会这样

        1. 你的服务端 v2ray 没有启动,如果你使用自动脚本安装,并且没有修改配置文件,那么使用命令 systemctl start v2ray 运行即可。

          问题的排除需要提供很多信息,总的来说是一个很麻烦的事情,我上述给出的也只是经验推断。请完整的按照教程进行,使用相同的环境和配置,包括最后的配置和使用。

  2. root@vultr:~# bash <(curl -L -s https://install.direct/go.sh)
    Installing V2Ray v on x86_64
    Downloading V2Ray.
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    0 0 0 0 0 0 0 0 –:–:– –:–:– –:–:– 0curl: (7) Couldn't connect to server
    Failed to download! Please check your network or try again.
    一键安装行不通啊,请问这个应该如何操作呢?

        1. 如果你是新开的主机遇到这种问题的话,那你这个情况就很有趣了,目前反应这种情况的人并不多。

          我也曾遇到过,解决方案是:使用 Vultr 提供的网页控制台 console 登陆进 VPS,并修改主机的 SSH 端口然后配置密钥登陆而不是密码登陆,最后以密钥的方式在新端口连接主机成功。

          如果你不知道上述如何操作,请使用搜索引擎搜索关键词 “ssh 修改端口 密钥登陆” 获取帮助。

    1. 这个原因相对复杂,两个主要可能的关键点:你是否使用主流浏览器访问 Vultr 的 console,建议使用最新版的 Chrome。其二是 VPS 系统的主机出了问题,这需要你更详细的提供关于主机的说明。使用哪家 VPS 商,什么系统,创建 VPS 实例后进行了什么操作?

      1. 首先感谢耐心回复。问题有点多,我一一说。本人是在这方面的小白,大部分都不怎么懂,过程是根据你的指南进行操作的,包括在哪里购买的vps。
        从头说,我现在删除了之前的主机,重新建了个洛杉矶的主机。用ssh连接时还是会显示连接超时,但是其中试了几次会出现叫我输入密码的命令行,我右键粘贴回车之后却又是弹出连接超时。
        在看到你建议我使用: “使用 Vultr 提供的网页控制台 console 登陆进 VPS,并修改主机的 SSH 端口然后配置密钥登陆而不是密码登陆,最后以密钥的方式在新端口连接主机成功” 这个方法后,我百度了,并且找到这篇文章 https://www.cnblogs.com/subsir/articles/2566114.html
        说实话,一开始我并不知道这是啥,看得一头雾水。百度一番才又知道SecureCRT是windows下的一个软件。我照着写了下去,那时候网页console还能用,但是由于对Linux系统语言不熟悉,我并不能理解我打的命令行能否运行。具体情况是我逐行打了也没有出现什么反应。
        写到这里,我再次打开console又可以用了,但是对于你说的那个办法我在那篇文章也不怎么看得懂。。。所以能不能劳烦你解释得更具体一点,或者发邮件给我你的联系方式,我再求教?
        感谢!

        1. 完全理解你的心情,大家都是从新手摸索过来的,这个对于目前阶段的你是有点复杂,而且网上教程良莠不齐,很容易陷入迷途。老实说你遇到的问题真的很小众,算是超纲题了。

          把你的 vps 信息发送给我,我明天会帮你配置服务端,配置完成后会把结果发给你邮箱,你自行配置客户端。

          1. 很感谢,我已经将详细信息发给了你的outlook邮箱。
            等待你的回信。

          2. 我无法使用密码登陆你的主机。

            看样子你使用 console 连接主机后,进行了一些密钥操作,我估计是 /etc/ssh/ 下文件权限的问题。

            我并不期望你去解决这个问题,最简单的方法就是删掉重开吧。

  3. 修改完config.json,到打开v2ray这一步,cmd窗口一闪而过消失,截图内容为:a unified platform for anti-censorship。

    服务器上v2ray已运行:[root@vultr ~]# ps aux|grep v2ray
    root 811 0.0 1.5 116036 7940 ? Ssl 13:26 0:00 /usr/bin/v2ray/v2ray -config /etc/v2ray/config.json
    root 1312 0.0 0.1 112704 972 pts/2 S+ 13:46 0:00 grep –color=auto v2ray
    百度结果说可能是服务端与客户端版本不对的原因?请指教

    1. 一闪而过说明客户端 config.json 配置存在格式错误,v2ray 因此无法运行,完整复制文中配置,修改时请保持原有格式。

      可以在 v2ray 文件夹下按下 shift 同时单击鼠标右键,在当前路径打开 powershell(或cmd),然后在命令行窗口下执行 ./v2ray.exe ,这样就可以获取到程序运行出错的信息。

      1. 对,如果解压完成以后不修改任何配置是不会是闪退的。
        我按照您说的方式捕获到的错误信息为:
        A unified platform for anti-censorship.
        main: failed to create server > v2ray.com/core/app/router: this rule has no effective fields
        这是什么原因呢?

        1. 解压完成后不进行任何修改是无法使用的。

          请完整复制我文中的客户端配置,清空原有 config.json 内容然后粘贴进去。

          其中你仅仅需要修改 IP/Port/Id,注意修改 IP/Id 等信息时,保留原有格式,如引号,和末尾逗号。

  4. [root /]# systemctl status v2ray
    ● v2ray.service – V2Ray Service
    Loaded: loaded (/etc/systemd/system/v2ray.service; enabled; vendor preset: disabled)
    Active: failed (Result: exit-code) since Mon 2018-11-19 23:08:44 CST; 1min 31s ago
    Process: 6370 ExecStart=/usr/bin/v2ray/v2ray -config /etc/v2ray/config.json (code=exited, status=23)
    Main PID: 6370 (code=exited, status=23)

    Nov 19 23:08:44 host.localdomain systemd[1]: Started V2Ray Service.
    Nov 19 23:08:44 host.localdomain systemd[1]: Starting V2Ray Service…
    Nov 19 23:08:44 host.localdomain v2ray[6370]: V2Ray 4.5.0 (Po) 20181116
    Nov 19 23:08:44 host.localdomain v2ray[6370]: A unified platform for anti-censorship.
    Nov 19 23:08:44 host.localdomain v2ray[6370]: main: failed to create server > v2ray.com/core/app/router: this rule has no effective fields
    Nov 19 23:08:44 host.localdomain systemd[1]: v2ray.service: main process exited, code=exited, status=23/n/a
    Nov 19 23:08:44 host.localdomain systemd[1]: Unit v2ray.service entered failed state.
    Nov 19 23:08:44 host.localdomain systemd[1]: v2ray.service failed.

    请问这是什么故障?谢谢!

发表评论

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