VMess协议指南:基于DogYun服务器从零开始搭建专属代理服务

[members_only]

本文是一份面向新手的保姆级教程,详细讲解如何使用VMess协议,在DogYun云服务器上从零搭建一个安全、高效的网络代理服务,并完成Clash或V2rayN客户端的配置。

一、核心概念:快速理解VMess与V2Ray​

在开始操作前,厘清几个基本概念至关重要,这能避免很多混淆。

  • ​VMess是什么?​​VMess是一种网络通信协议,核心功能是​​加密和混淆​​数据传输。它通过独特的协议设计,将你的网络流量“伪装”起来,使其在传输过程中更难被识别和干扰。
  • ​VMess和V2Ray的关系?​​这是一个常见的误解。简单来说:
    • ​V2Ray​​ 是一个功能强大的​​工具软件​​(好比一个多功能工具箱)。
    • ​VMess​​ 是V2Ray工具所支持的其中一种​​通信协议​​(好比工具箱里的一把螺丝刀)。
    • 因此,我们说“使用V2Ray软件来配置VMess协议”。两者是工具与工具用途的关系,并非并列可比的项目。
  • ​VMess的优势是什么?​​相比早期协议,VMess的安全性更高。它通过动态ID和时间戳等因素对数据进行多次加密,能有效防御“重放攻击”,即恶意分子截获并重复发送你的数据包。

​二、准备工作:三样必备工具​

开始搭建前,请确保你已准备好以下三样东西:

3.​​一个本地客户端​​:用于连接你的代理服务。推荐 ​​V2rayN​​(Windows)或 ​​Clash​​(多平台)。

1.​​一台云服务器​​:本教程以​​DogYun(狗云)​​ 为例,因其对中文用户友好且IP质量相对稳定。

2.​​一个SSH连接工具​​:用于远程操作服务器。推荐免费且易用的 ​​FinalShell​​。

VMess Shadowsocks Trojan Vless 之间的对比

协议
名称
备注
解释
新手
推荐度
Trojan-goTLS 非对称加密。可以将流量伪装成自然的网站浏览。
基本不会被GFW防火墙探测到。除非服务器 IP 本生就在黑名单内。
推荐
VMess可以裸连(基础链接)也可以套 TLS。一般
VLess可套 TLS,支持 XTLS,VMess 的修改·加强版。
但是类型和 Trojan-go 更为类似。
一般
ShadowSocks喝过茶,有插件可以进行加密。貌似还是会留有指纹痕迹。
很多机场都在用,被封的频率也挺高
一般

VMess 服务器端配置保姆级指南

你需要有如下这几个东西:

  • 一个免费的加速器软件(用来下载、以及部署用的,后续可以不用)
  • DogYun 服务器(其他服务器也行)
  • FinalShell 一个免费的 SSH 软件工具(下载地址,如果失效请留言)

购买节点服务器

之前演示用的都是 Vultr 服务器,但是目前推荐新手使用狗云的服务器会更好。操作基本是没有变化的,大家依葫芦画瓢即可。

狗云(DogYun)服务器购买和配置教程(最新)

之前很多观众在评论区反馈 Vultr 服务器的 IP 被封的概率很高,同时很多小伙伴也无法打开 Vultr 官网。所以这里给他大家再推荐一个小众、但非常安全的服务商——狗云(DogYun)

点击上方链接进入狗云官网,并点击右上角控制台的图标:

注册号账号之后就可以开始购买对应的服务器了。点击菜单左侧的 【Create Elastic Cloud(弹性云)】这里有众多地区和线路供大家选择(香港、日本、美国、德国、荷兰):

如果你们只是为了更好的科学上网,那么选择香港,并且线路中带有 BGP 或者 CMNET 的就可以。如果你们需要特定的 IP(例如玩 Tiktok、或者 FaceBook 的)就可以根据自己需求进行选择。下面三个是大家可以考虑入手的,最开始学习买一个月或者一个季度就可以(这里我就用 香港-KC 做演示):

选玩服务器位置,就需要选择具体节点配置了,在最下方。如果显示 【Sold Out】就代表卖完了,如果显示绿色的 【Normal】 就代表还可以购买,这里我选择 【组B】:

之后就可以选择自己的配置,这里我就使用默认最小的配置【1 核心 2GB内存 20GB硬盘】,目前看来只需要 46元/月。如果算上汇率,和 Vultr 的服务器差不多:

之后就是带宽、流量、线路的选择。新手建议默认即可(按照下图所示的那样):

之后就是系统选择,这里和之前 Vultr 的一样,选择 【Ubuntu 22】:

然后点击【Next】购买服务器即可。

注意:这里需要提前进行充值,在左侧菜单中有个【Add Balance】按钮,点击一下,新手最开始充值 50 元就行。如果你熟悉配置服务器,那么可以根据自己的需求进行充值。充值支持支付宝

购买之后,点击左侧菜单中的 【My Elastic Cloud(我的弹性云)】就可以看到刚才购买的服务器。点击对应服务器后面的⚙图标就可以看到详细的设置:

通过 FinalShell 配置服务器端

通过 Vultr 购买好服务器后,就需要通过 FinalShell 工具 SSH 连接至服务器。具体流程可以看上面的 Trojan 的那篇教程这里就不多说了。

成功连接之后,在界面直接粘贴如下命令:

bash <(curl -L https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh)

这个是用来安装或更新 V2ray 工具的。

PS:如果你需要卸载,那么就执行如下命令:

bash <(curl -L https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh) --remove

安装完成后会如下显示:

可以看到成功安装的代码中有一个配置文件位置(就是上方箭头的位置):

/usr/local/etc/v2ray/config.json

这个就是告诉我们配置文件的储存位置(/usr/local/etc/v2ray/)。直接在 FinallShell 下方的文件目录里放入上上面的地址,并双击 config.json 配置文件:

这个时候,config.json 文件中的配置其实是空的,需要我们自行填写配置文件。具体配置文件如下,直接将以下代码复制到打开的文件中,Ctrl+S 进行保存。

{
  "inbounds": [
    {
      "port": 8388, 
      "protocol": "vmess",    
      "settings": {
        "clients": [
          {
            "id": "af41686b-cb85-494a-a554-eeaa1514bca7",  
            "alterId": 0
          }
        ]
      }
    }
  ],
  "outbounds": [
    {
      "protocol": "freedom",  
      "settings": {}
    }
  ]
}

其中的 Port 就是端口,这个可以自行填充。新手建议默认的 8388 端口。同时记得回到 FinalShell 使用如下命令放行这个端口,否则接下来将无法连接:

ufw allow 8388

Protocol 就是协议,这里就保持代码里的 vmess 即可。同时 Clients id 部分就是用户ID,这里的数字字母可以随意改动,但是建议保持代码中的格式。alterID 就是随机ID部分,直接填写 0 就可以。后面会讲为什么这么设置。

文件保存之后,记得重启以下 v2ray 服务即可,命令如下:

systemctl restart v2ray

并通过如下命令确认(active)已经运行成功:

以上,服务器端 VMess 配置就已经完全结束了。下面就是客户端的配置。

V2rayN 客户端上配置 VMess

下载 V2rayN 客户端(Github | 云盘),左上角添加一个 VMess 服务器,并按照下图填写和 config.json 一致的配置内容:

需要注意的是在没有加 TLS 的情况,地址部分必须填写节点服务器IP地址;端口则是配置文件中的端口地址;同时用户 ID 以及 alterID 也需要一一对应好才可以。

设置好后,通过 V2rayN 真连接测试速度:

最后调整下 V2rayN 客户端的全局链接状态即可。至此,最基础的 VMess 节点科学上网你已经成功实现了!

更高级的做法 VMess + TLS(Https)

正如开头说的那样,我个人为目前最好的协议是 Trojan-go(利用 TLS 加密,伪装成正常的 https 数据)。其实 VMess 也可以在原有的多重加密的基础上,再次进行 TLS 加密,对流量进行伪装。

首先,为了伪装成 https 流量,你就需要一个域名,同时还需要解析到节点服务器。你可以使用电脑自带的 cmd 命令,去ping 一下当前的域名,看看是否解析到了节点服务器上。就像这样:

做完这一步之后,你需要为当前域名申请一个证书,具体方法如下:

#安装socat:
apt install socat

#安装acme:
curl https://get.acme.sh | sh

#添加软链接:
ln -s  /root/.acme.sh/acme.sh /usr/local/bin/acme.sh

#切换CA机构: 
acme.sh --set-default-ca --server letsencrypt

#申请证书: 
acme.sh  --issue -d 你的域名 --standalone -k ec-256

你可以逐条执行上方的文件。申请证书时间 5-10 分钟不等。得到如下结果即可:

注意:如果出现了 Verify error 的标识,大概率是因为你的域名解析除了问题。记得 ping 下自己的域名查看解析是否正确。

然后使用如下命令将申请下来的公钥和私钥通过如下命令放到 /usr/local/etc/v2ray/ 目录下:

#安装证书: 
acme.sh --installcert -d 你的域名 --ecc  --key-file   
/usr/local/etc/v2ray/server.key   --fullchain-file 
/usr/local/etc/v2ray/server.crt 

然后,服务器端的 config.json 也需要重新修改一下,基础部分并没有变化,但是多加了一段 TLS 的验证配置:

{
  "inbounds": [
    {
      "port": 8388, 
      "protocol": "vmess",    
      "settings": {
        "clients": [
          {
            "id": "af41686b-cb85-494a-a554-eeaa1514bca7",  
            "alterId": 0
          }
        ]
      },
      "streamSettings": {
        "network": "tcp",
        "security": "tls",
        "tlsSettings": {
          "certificates": [
            {
              "certificateFile": "/usr/local/etc/v2ray/server.crt", 
              "keyFile": "/usr/local/etc/v2ray/server.key" 
            }
          ]
        }
      }
    }
  ],
  "outbounds": [
    {
      "protocol": "freedom",
      "settings": {}
    }
  ]
}

配置结束之后,需要在 V2rayN 客户端,按照下图进行设置。重点在我标注红框的区域:

然后还是和刚才一样,进行真连接测试,并配置好 V2rayN 全局设置即可进行科学上网。

使用Vultr服务器和VMess协议,新手只需10分钟即可配置自己的机场节点,非常适合进行Facebook广告投放,个人观看YouTube和Netflix。

VMess是一种保护隐私和网络通信安全的协议,通过V2Ray项目开发,提供安全的通信通道。VMess和V2Ray是两个不同的东西,不能混淆。

VMess协议对数据进行多次加密,有效对抗网络攻击和监视。配置 VMess 服务器需,本教程使用了 Vultr 服务器、FinalShell 工具和 V2ray N客户端。

为了进一步提升安全性,可以将 VMes s与 TLS(Https)结合使用,对流量进行伪装。申请域名并获取证书后,对服务器端的 config.json 进行相应修改,并在V2rayN客户端进行设置,即可实现科学上网。

[/members_only]