自建梯子 Vultr + ShadowSocks(SS):科学上网一键部署新手教程

这篇 Vultr + ShadowSocks(以后简称 SS)自建梯子教程完全是针对小白。目的也是为了让新手能够快速了解 SS 的运行逻辑

在文章最后会附上一些必要软件的下载地址,以及常见问题解答。同时还会对数据传输加密做一些简单的解释。

注意:本文仅供学习使用,请遵守当地法律法规,学习尝试后请自行删除违规内容。

废话不多说,直接开。

准备工作

  • Vultr 账号,以及一台 Vultr 的 VPS 服务器。
  • SSH 工具:可以用 XShell 或者 FinalShell。文末有提供地址。
  • 客户端工具:v2rayN、SS 客户端、Clash 之类的都可以。文末有提供地址。
  • 辅助工具:可以免费科学扶墙的 VPN工具(用于防止下载失效)。

Vultr 的 VPS 购买

访问 Vultr 官网(https://www.vultr.com/register/),并注册账号。这里就不演示注册过程了,最好选择 163 邮箱或者 Gmail 邮箱进行注册。QQ 邮箱容易被官方屏蔽注册。

注册账号,并验证邮件后,就可以进入到自己的 Vultr 服务器管理界面(https://my.vultr.com/

访问不了上面的链接?如果登录有问题,请使用文末的免费 VPN工具进行访问。先用免费的扶墙工具配置好自建梯子。

登录后界面是这个样子的:

个人 Vultr 服务器管理界面
个人 Vultr 服务器管理界面

点击右上角 “+” 号,选择 “Deploy New Server”,新增一个 VPS 服务器。

服务器选择最便宜的 “Cloud Compute”:

选择服务器
选择服务器:新手别管太多,挑便宜的

CPU 和存储选择默认的 AMD 的即可:

CPU 和存储选择
CPU 和存储选择:依然咋便宜咋来

服务器地址可以从 Asia(亚洲)中挑选,推荐选择 Tokyo(日本东京) 或者 Singapore(新加坡):

服务器地址:当前测试选择的是日本东京
服务器地址:当前测试选择的是日本东京

系统环境注意一定选择 Ubuntu,版本可以使用图中的 22.10×64 位的:

系统环境:Ubuntu 64 位系统

为什么系统环境选择 Ubuntu?Ubuntu(乌班图)内置了 SS 相关指令和插件,安装时间会缩短很多。其他的系统环境各位看官熟悉了 Ubuntu 之后可以自行搜索配置指令。

服务器配置选择最便宜的即可,学习用的没有必要弄那么好:

服务器配置:第一次就选择最便宜的

后续如果你觉得链接速度的较慢,可以选择配置高一些的。不过我个人觉得没啥必要。

关闭 Auto Backup(自动备份),其他默认即可。不懂的可以按照下图来弄:

关闭 Auto Backup(自动备份)
关闭 Auto Backup(自动备份):自建节点不需要备份功能,浪费钱

点击最下方的 Deploy Now(部署),创建服务器:

部署服务器

点击之后就会显示付款界面(第一次注册充值貌似会送 50 美金,最开始测试可以充值个 10 美金就可以)。

付款之后就会回到服务器列表界面(可以使用支付宝或者 VISA 信用卡购买)。

这里不得不说 Vultr 服务的优势了:Vultr 服务器是按照小时计费的。所以当你的节点被国内的防火墙拦截了,那么可以果断地删除服务器,并新增另一台服务器使用。相比月费、年费的服务器要方便很多。你不用再担心浪费钱了。

服务器的 Status(状态)栏就会显示 Installing(安装中)状态。等到其变成 Running(运行中)状态就代表服务器部署已完成:

下面就可以开始配置服务器端了。

配置服务器端

点击服务器名称,进入服务器详细信息界面:

服务器详细信息界面
服务器详细信息界面

用记事本记录三个内容:IP地址、用户名称、以及密码:

记录 IP、用户名、密码
记录 IP、用户名、密码

打开自己的 SSH 链接工具,并通过记录的内容进行链接(22端口)。第一次用的参考我下图填写即可:

通过 FinalShell 工具链接服务器
通过 FinalShell 工具链接服务器

我这里用的是 FinalShell 工具(文末有下载地址)。其他 SSH 工具(比如 XShell 之类的)操作原理差不多,我就不演示了。

为何博主选择用 FinalShell 工具?因为 FinalShell 不需要使用 vim 命令,就可以用图形化界面,辅助编辑文件。这对于新手来说非常友好!

点击确定之后,如果出现下图标识就代表连接成功:

连接成功
连接成功

输入下方代码,回车,开始安装 SS:

apt install shadowsocks-libev

期间会提示问题是否继续,直接输入 “y” 继续即可,我就不截图演示了。大概 30 秒就会运行完毕。完毕后输入下方指令查看运行状态:

systemctl status shadowsocks-libev.service

出现绿色的 Running(运行中)标识,即代表运行成功:

systemctl status 查询运行状态
通过 systemctl status 查询运行状态:运行成功

大家看,选择 Ubuntu 环境的好处凸显出来了。源中自带 ss 编译文件。新手非常友好。

同时通过上图也可以看到,SS 的配置文件 config.json 文件是安装在:etc/shadowsocks-libev/ 中的。

你可以在 FinallShell 下方,右击刷新,并在 etc/shadowsocks-libev/ 目录中找到 config.json 文件:

 etc/shadowsocks-libev/ 目录
etc/shadowsocks-libev/ 目录

双击进行编辑。注意第一行的 Servier 后面需要修改为下图中的 [“0.0.0.0”],其余的默认即可:

编辑 config.json 文件
编辑 config.json 文件

为什么要修改成 [“0.0.0.0”]?因为这个配置是允许特定 IP 访问当前服务器。既然这个服务器需要做成节点,那么就需要放开所有IP 段。那么就是 “0.0.0.0”。

记录好上图中提示的信息,并且 Ctrl+S 保存(或者菜单中选择保存)就可以。

因为部署 Vultr 服务器,默认只开了 22 端口。而我们现在用的是 8388 端口,所以需要将 8388 端口打开。

重要:端口号是可以自行定义的。但是定义之后,记得要在防火墙中打开端口。并且客户端中也需要同步修改

首先用下面命令查询下端口状态:

ufw status

会看到目前只有 22 端口开启:

目前只开启了 22 端口
目前只开启了 22 端口

然后使用 allow 命令打开 8388 端口:

ufw allow 8388

再次通过 status 命令查看端口发现 8388 已经打开:

打开了 8388 端口
8388 端口已打开

运行 restart 重启 SS 服务,并通过 status 查看状态:

systemctl restart shadowsocks-libev.service

systemctl status shadowsocks-libev.service

状态为 Running(运行中)就可以(之前放了示例)。

到此,服务器端的配置就已经全部结束了。

配置客户端:v2rayN 或 SS 客户端

我这里使用的是 v2rayN 客户端(5.39 版本)进行演示(文末有下载地址)。SS 客户端的使用方式基本相同(后续配合插件的话就需要使用 SS 客户端)。

下载 v2rayN 并解压,双击 v2rayN.exe 启动客户端。

左上角服务器,选择添加 [ShadowSocks] 服务器,并按照上一步中的记录的 config.json 的信息在下方填写:

添加 [ShadowSocks] 服务器
添加 [ShadowSocks] 服务器,填写按照 config.json 的内容进行填写
  • 别名:随意填,就是让你标注信息的。
  • 地址:就是你的服务器 IP 地址,可以直接从 Vultr 那里复制。
  • 端口:就是上一步中记录的端口位置(可以自行调整,记得服务器端和客户端要一样)。
  • 密码:和 config.json 中的一样(********)。
  • 加密方式:和 config.json 中的一样(chacha20-ietf-poly1305)。

小知识:SS 采用的是对称加密算法。简单说就是:上锁的和开锁的用的是同一把钥匙。所以客户端和服务器端的配置需要匹配上才能够链接。在这里就是密码和加密方式

点击确定保存之后,在 v2rayN 中选择添加的服务器,回车启用。

然后,电脑右下角小图标右击之后,系统代理选择:自动配置系统代理;路由:选择绕过大陆(Whitelist)模式:

系统代理以及路由设置
系统代理以及路由设置

此时,再回到 v2rayN 界面,右击添加的服务器,选择测试服务器真连接延迟测试(或者 Ctrl + R)。

如果出现测试结果,即代表链接成功:

出现测试结果,即代表链接成功
真连接测试:链接成功

此时,你应该就可以愉快的科学上网了!

但是…

SS 裸奔(不用插件)逻辑

以上的方式,我称为 SS 裸奔。直白的说就是:SS 会对数据加密,具有一定的隐秘性,但是依然会被防火墙识别。

SS 裸奔示例
SS 裸奔示例

我估计是这样的:

之前 SS 的开发者被请去喝茶了,可能把 SS 的一些漏洞(或者说是用于辨别的特征)放了出来。

防火墙会进行回放攻击(重放攻击)。就是拿着我们发送给服务器的数据包,伪装之后,发送给我们的节点服务器,并测试服务器中是否运行了 SS 服务(我估计是返回数据中有可以识别 SS 的特征\指纹之类的数据段)。

这里不得不地说,我种花家的防火墙真牛逼!

因为 Vultr 服务器用来搭梯子的很多,所以特定 IP 段的服务器会被重点照顾。

所以…

如果你用了上面的方法,并且真链接成功。那么恭喜你,你安全了。但是如果你真连接之后,节点就连不上了,就说明你运气不好,你的服务器在防火墙的监控范围内。

这个时候你可以选择:

  • 换个服务器(IP)。有钱人真好。
  • 对数据进行二次加密。为了学习就选择这个。

注意这个时候切换节点的端口是没有用的(毕竟服务器被关照了),只能用插件对数据进行进一步进行加密处理。逻辑大概是这样的:

SS 插件加密

加密之后的数据在一定程度会消除特征\指纹,回放攻击无法识别数据。从而达到不会被墙的效果。

SS 之后有个升级版 SSR。其实原理和此类似,都是对数据进行升级加密。我并不推荐 SSR,因为很久没更新的了(喝茶了?)如果你对安全性有担忧,那么就果断使用 Trojan-Go 吧

用插件进行数据加密

如上面的示例图。插件需要同步装在客户端以及服务器端。

我们先来配置服务器端

服务器端配置插件

Ubuntu 同样内置了 SS 的插件,我们只需要回到 FinalShell 执行如下命令即可:

apt install shadowsocks-v2ray-plugin

然后输入文件名启动插件:

ss-v2ray-plugin

启用后,需要在之前的 config.json 文件中修改配置,主要就是最后的两行,如下图:

在之前的  config.json 文件中修改配置
config.json 中添加配置:重点在最后两行

完整的代码如下图所示:

{
    "server":["0.0.0.0"],
    "mode":"tcp_and_udp",
    "server_port":8388,
    "local_port":1080,
    "password":"p0GaoLRqia1u",
    "timeout":86400,
    "method":"chacha20-ietf-poly1305",
    "plugin":"ss-v2ray-plugin",
    "plugin_opts":"server"
}

记得修改完 config.json 之后 Ctrl+S 保存文件。

回到终端,使用 restart 命令重启 SS 服务:

systemctl restart shadowsocks-libev.service

之后再次查看 status 就会看到其中包含了 SS 的插件:

执行 status 命令之后会看到 SS 插件
执行 status 命令之后会看到 SS 插件

客户端配置插件

应为目前 v2rayN 客户端不支持 SS 插件,所以这里我们使用 SS 客户端(下载地址在文末)。

你需要下载两个东西:

  1. Shadowsocks-4.4.1.0 下载之后解压缩到文件夹。
  2. 还有一个是 v2ray-plugin-windows-amd64-v1.3.2.tar

将 2 解压缩之后出来的 v2ray-plugin_windows_amd64.exe 放入到 1 解压缩之后的文件夹中,如下:

将 v2ray-plugin_windows_amd64.exe 放入 SS 客户端目录
将 v2ray-plugin_windows_amd64.exe 放入 SS 客户端目录

双击 Shadowsocks.exe 启动 SS 客户端,并按照下图填写参数:

SS 客户端参数填写
SS 客户端参数填写,注意插件程序名称以及插件选项

服务器地址、端口、密码、加密方式和 config.json 的一样。插件程序(就是你放入文件夹的文件名称)、以及插件选项 “server” 注意填写正确。

然后右击电脑右下角小飞机图标,选择 PAC 模式(推荐)、或者全局模式。就可以合理的科学上网了!

结语

以上,自建梯子 Vultr + ShadowSocks(SS) 完整的过程就算结束了。这个教程看起来很长,但是实际操作只需要 10 分钟就可以完成。

记得学习完之后,自行删除服务哦。我演示只是学习技术,不违反地区法律规定。同时演示中的服务器也不用测试,就在我打这段文字的同时,我已经将服务器删除了。

自己尝试期间有任何问题,欢迎在下方給我留言。

配套软件下载地址

下载注意事项:这些工具均上传到了 pCloud。可以直接点击链接下载。如果下载失效,或者下载速度过慢可以考虑先使用免费的 VPN 工具进行下载,然后再按照教程进行配置。

1FinalShell.exe
2Shadowsocks-4.4.1.0.zip
3v2ray-plugin-windows-amd64-v1.3.2.tar.gz
4v2rayN-Core-5.39.zip
5免费的 VPN 工具

额外的学习资料地址

提前说明:GitHub 和 YouTube 在特定地区无法打开,如果你需要提前观看这些资料,请使用免费的 VPN 工具打开学习。

GitHubhttps://github.com/shadowsocks/v2ray-plugin
GitHubhttps://github.com/2dust/v2rayN
GitHubhttps://github.com/shadowsocks/shadowsocks-windows
YouTube电玩科技AK:https://www.youtube.com/watch?v=ePxnyW7iju4
YouTube不良林:https://www.youtube.com/watch?v=3ivwonJuqyI

《“自建梯子 Vultr + ShadowSocks(SS):科学上网一键部署新手教程”》 有 1 条评论

发表回复

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

  1. 自建梯子科学上网:Vultr + Trojan-Go 一键部署新手教程 – 胖橙博客

    […] 之前我写了 Vultr + SS 的一键部署教程。我个人观点,从安全性角度来说,SS 即使装了插件,还是不如 Trojan-go。 […]