非 root 用户使用Serv00服务自建 wstunnel和v2ray 梯子

Serv00介绍

Serv00 是一家来自波兰的主机服务提供商,因提供 10 年免费的虚拟主机火爆全网。Serv00 提供的主机完全免费、无广告,规格如下图。唯一的要求是每 3 个月需登录一次控制面板或 ssh,否则会回收账号。Serv00 提供的主机服务更接近于 vps 而非 web host(网站空间/网站托管),提供易用的 devilWeb 面板和 ssh,最多可以开放 3 个端口、创建 3 个非 MySQL 数据库、10 个 MySQL 数据库、100 个站点等等,可以开通额外的程序执行权限,非常实用。

Serv00注册

Serv00 的注册、开通几乎没有任何门槛。前往 serv00 官网(Serv00.com)自行注册一个账号,serv00 会不断刷新注册人数,不同域名对应的服务器会有注册人数限制,如果达到上限可能不再开放注册或新增服务器继续接受注册。点击『Register an account』进行注册。

开始注册之后,首先会显示 servoo 提供的 10年免费 vps 规格,点击该页面的下方『Create account』,接下来填写信息。注意3点:

  • 邮箱务必为真实邮箱,需要验证激活
  • 用户名(Username)自行确定,用户名就是域名(username.serv00.com)
  • 答案(Answer)处不要留空,填写 free,也就是免费。Ai-China注册时是填写的0,也是注册了多个邮箱才成功(每个邮箱都提示已被注册,直到第二天才在其中一个邮箱中收到注册成功邮件),不知有无关系。

填好后,点击『Create account』,如果用户名没有被占用,后台会进行资源分配、开通,并向填写的邮箱发送邮件。页面上方出现绿色的提示信息,意味着 serv00 账户已经创建完成,检查邮箱查看所有信息。

Serv00 后台管理面板为 devilWeb,很好用,ssh 账户(用户名、密码)与管理面板完全相同,在 ssh 或面板中修改密码,对 ssh 和面板同时生效。没有安装第三方 ssh 客户端的,可以直接使用 windows 自带的 openssh 客户端登录。Ai-China建议使用Windterm工具,很好用,下载替换文件等操作简便,且登录一次下次无需再输入登录信息。

领完了免费的服务器,准备自建个梯子,却发现网上的教程都是一键搭建,都得需要 root 权限,不然就操作不了。但Serv00并未提供Root权限,只有自己用户目录下的权限。所以我们要手动安装 v2ray,步骤并不繁琐,跟着一步步做,保证没问题。

一、登录 ssh

① 获取账密

首先拿到 serv00 给的服务器地址和账密,我这个是直接发到邮箱的

② 登录 ssh

以windterm为例

image-20240708084735380

点击连接后出现如下界面,输入邮件中提供的用户名

image-20240708085113972

image-20240708085212280

将邮件中提供的密码粘贴进来,这里需要注意打开框后面的可视,因为粘贴过程中可能前后出现空格,导致登录失败。出现如下界面即表明登录成功!

ssh

二、开通端口、额外服务

登录服务器管理后台 https://panel2.serv00.com/

① 打开额外服务

首先按照步骤打开额外服务,让 status 处于 Enabled 状态

② 创建端口

其次按照步骤创建端口,勾选随机端口号避免创建重复的端口导致失败

③ 记住刚才创建的端口号


安装 v2ray

① 查看系统

回到之前登录的 ssh 界面 输入 uname -a 查看服务器系统

FreeBSD s2.serv00.com 13.2-RELEASE-p10 FreeBSD 13.2-RELEASE-p10 #4 releng/13.2-n254661-a839681443b6-dirty: Tue Feb 20 23:03:40 CET 2024 root@pkg0.admin.net.pl:/usr/obj/usr/src/amd64.amd64/sys/devil amd64

我这儿返回的是这样的,FreeBSD amd64

② 下载 v2ray

由于没有 root 权限,我们无法使用官方提供的一键安装脚本,只能自行手动安装。

前往 https://github.com/v2fly/v2ray-core/releases 找到你的系统版本所对应的 v2ray 版本 我这个服务器的系统是 FreeBSD amd64,那么我就找的是 freebsd-64.zip右键这个 zip 地址,复制下载连接。 然后回到 ssh 中,输入

1
2
3
4
cd ./domains/ #我这边是有个domains的目录,根据你们服务器情况自行操作
mkdir v2ray #建议新建一个v2ray的文件夹
cd v2ray #进入到这个文件夹中
wget <https://github.com/v2fly/v2ray-core/releases/download/v5.14.1/v2ray-freebsd-64.zip> #选择对应系统的版本下载v2ray,这里将刚才复制的下载链接粘贴过来即可,不要按这里提供的地址。windterm的复制为Shift+Delete,粘贴为Shift+Insert

等待下载完成之后,输入ls 命令查看当前目录文件,可以看到这个 zip 包已经在这个目录里了。

③ 配置 v2ray

还是在刚刚的 v2ray 目录下

1
unzip v2ray-freebsd-64.zip #这边换成你刚刚下载的对应的zip包

然后等待解压完成,再执行 ls 命令时能看到很多个文件

1
./v2ray version

先验证下能否正常启动

V2Ray 5.14.1 (V2Fly, a community-driven edition of V2Ray.) Custom (go1.22.0 freebsd/amd64) A unified platform for anti-censorship.

我这边正确的返回版本号了,如果提示其他异常的话,请检查一下下载的 v2ray 版本是否是你服务器系统所适配的版本。

1
./v2ray uuid

这边先生成一个 uuid,记录一下,后面配置的时候会用到

④ 配置 config

接下来,我们需要先将配置文件下载下来,进行修改后,再上传回去

image-20240708103109590

Windterm左侧中间位置的文件管理器,双击进入我们刚刚创建v2ray的文件夹,domains–> v2ray,右键选择config.json文件,点击下载

使用文本编辑器将下载到本地的config.json文件打开,具体配置文件可以如图对照,当配置完成之后,保存好。

然后将修改好的config.json文件保存后拖入同一文件夹内,自动上传更新

⑤ 启动 v2ray

回到之前的 ssh 窗口 先查看这个服务器的外网 ip

curl ifconfig.me

返回具体的服务器 ip 然后再执行./v2ray run 启动 v2ray

如果需要持续保持后台运行 screen -S v2ray ~/domains/v2ray/v2ray -config ~/domains/v2ray/config.json

按下 Ctrl + A 然后按 D 来脱离 screen 会话。

使用 screen -r v2ray 可以重新连接到会话。

再在控制台增加一个任务,当服务器重启后自动执行 screen -S v2ray ~/domains/v2ray/v2ray -config ~/domains/v2ray/config.json

启动本地代理

启动本地代理的方法可以使用 Nekobox 代理工具。

新建一个代理配置,服务器 手动输入选择代理类型为 vmess

image-20240708092055378

配置方式如图,填入服务器 ip、端口号、uuid,然后保存,再启动代理,你就发现成功了!

image-20240708092557876

访问上了谷歌,显示的地址也跟服务器一致是波兰的地址~

但Ai-China开始的时候就没连接上,提示对方主机主动拒绝连接之类,这是监听地址、端口不对应造成的。我的解决办法是neko-box、Chrome浏览器的SwitchyOmega插件都使用完全对应的端口配置,如下图:

image-20240708092932124

image-20240708093103603

对了,原教程中如下图的配置,画红线的listen部分原是127.0.0.1的本地loop,Ai-China这里试过不能连接,改成0.0.0.0即可。而0.0.0.0是IPv4地址,不适用IPv6,所以更好的办法是直接设置成::。对应的nekobox监听端口也要设置为::,如上图。还有,例图中都有了//注释,真正的config.json文件中是没有的。

image-20240708093400587


Serv00-搭建wss和https代理节点

wstunnel、gost 等代理工具同样也有 freebsd 二进制预编译版本,能运行 panindex 的 serv00 自然也能运行这些代理程序。我们就以 wstunnel 为例,快速搭建一个 https 代理节点,建立 web tunnel。

整体来看,web tunnel (wstunnel 新版本支持客户端请求协议为 https,基于 http2 实现)是完全合规的常规流量,没有任何“特征”,是不会被屏蔽的。相比来看,现有针对 serv00 上的 vless、ss2022 等搭建方式都是照搬古老的容器化节点部署方式,把简单的事情复杂化,不仅低效率、自定义非标准化、易于检测,而且提高了部署、应用门槛。理论上,不需要编辑、创建网络接口的代理程序都可以在 serv00 上直接运行,没有任何必要使用低效的 js 脚本和作茧自缚的花式“协议”。

服务端

有了前文的基础,我们不必再重复激活程序运行权限,但需要添加一个服务端口(这里以 18443 为例,你可以随机生成并做相应修改)。左侧导航栏点击『Port reservation』,选择『Add port』选项卡,输入 18443 即可。端口类型『Port type』确保为默认的 tcp,描述『Description』可留空,也可以指定一个便于记忆、区分的关键词。最后点击『+Add』按钮放行 18443 端口,如果系统提示该端口已被其他人使用,可以换其他未被使用的端口,wstunnel 等程序对监听端口没有任何要求。

端口放行之后,就可以使用以下命令下载、解压 freebsd 版本的 wstunnel 并启动。可使用命令mkdir Wstunnel直接将 Wstunnel 放置于用户根目录之下。

image-20240708094858888

然后运行

1
2
3
4
5
cd ./Wstunnel //进入Wstunnel文件夹
wget https://github.com/erebe/wstunnel/releases/download/v9.7.2/wstunnel_9.7.2_freebsd_amd64.tar.gz //获取程序包
tar zxvf wstunnel_9.7.2-rc1_freebsd_amd64.tar.gz //解压程序包
rm -f wstunnel_9.7.2-rc1_freebsd_amd64.tar.gz //程序已安装完毕,删除无用程序包
chmod +x Wstunnel //赋予Wstunnel文件夹权限

使用如下命令./Wstunnel server wss://0.0.0.0:分配的端口号启动wstunnel服务端,须将端口号改为实际放行的端口。

客户端

以 windows 为例,下载客户端,版本不必和服务端一致,如仅使用 wss 协议不低于 7.0 即可,如使用 http2 协议应确保客户端版本不低于 9.0。解压后,在解压目录下运行Powershell或CMD,直接参照以下命令运行、启动 wstunnel 客户端。

.\wstunnel client -L socks5://127.0.0.1:本地监听端口号(可在SwitchyOmega中查询) https://服务器网址:分配的端口号

一旦 wstunnel 启动运行,就可以打开浏览器,将代理指向 wstunnel client 使用的监听协议和端口,这里协议是 socks5、端口是 1080,就可以访问互联网了。你会注意到,serv00 目前还并没有走出波兰。


以上两种方式,自测都可以用上Serv00的波兰VPS梯子,速度还可以,youtube 1080P没有问题,4K的确有些卡。Ai-China利用这把梯子,手机通过PC上网,成功用国内手机号申请了Telegram电报号(以前的都是无法收到验证短信),各位亦可一试。

本文参考文章:https://geneliunx.com/2024/03/25/2024-03-25-A-non-root-user-construct-v2ray/

https://appscross.com/blog/set-up-a-wss-proxy-and-bypass-node-on-sero00-vps.html