因为工作与学习的缘故,总是需要浏览全球文献,但是由于我有时的地理位置并不支持我自由地穿梭在全球互联网上。而且我的服务器总是容易被封锁端口,于是我就参考官方和第三方文档搭建了一个服务器,并且稳定半年使用都没有问题。
于是,我决定打开一个教程,用于自己的温习和记录。
前置条件
首先我们需要【一台】线路不错的【服务器】,起码在受限制的地区连接不会很慢。(延迟并不能代表一切)
其次,我们需要【一个域名】
我使用的一台香港的服务器,因为香港作为一个发达的网络数据处理中心,在很多地方连接都不会很慢(起码对我来说)。
解析域名
我们需要解析一个【A记录】给服务器,请勿开启CDN。
安装Xray & 所需软件
因为V2ray内部团队的问题,Xray从V2ray分家出来,Xray更像是V2ray的超集,完全支援V2ray。我们不过多探讨这些内容,总之就是,Xray的历史原因,使得其并不包含在deb官方仓库中(我使用的是Debian),所以我们使用Xray官方提供的安装脚本来安装Xray:
从官方脚本 安装Xray
安装Nginx和证书申请工具
生成Xray所需的UUID
生成Reality所需的密钥
开始配置 Xray 的 Config 文件
可以参考并替换成我的配置:(【需要修改】的已经用【六】个【/】来标出)
配置完毕上面的json文件后。
写一个 HTML 静态网站。
把下面内容写入到 /var/www/hk/index.html
效果大概如下:
写一段Nginx配置,并申请证书
把下面配置写入 /etc/nginx/conf.d/hk.conf
保存完毕上面的内容后
用下面命令查看Nginx配置语法是否有错
使用下面的内容重载Nginx和申请证书
之后我们再次打开nginx的配置文件,大概就是这样了,我们进行一些修改
修改后:
修改完成,保存,之后继续看看nginx配置有没有问题,没问题就重载一下nginx
如果你之后又修改了Nginx配置文件,请记得重载Nginx。
打开网站,右键检查,找到安全的标签页,就能看到网站走的是TLSv几了
新版Chrome合并后,这个页面叫:Privacy and Security。打开后在Security页查看。
(第一次)启动 Xray
(手动安装的)Xray启动失败除了很明显写了你的配置文件有问题之外,就剩下权限问题了。一般来说,Xray的权限是Everyone,是很低很低的,所以你的xray必须放在/usr这个目录下,权限才会足够。(/usr/local/bin/xray)。或者你可以修改Xray的权限和归属组,但是我认为太麻烦了。
完成后,重启Xray: systemctl restart xray
这个时候应该就没问题了: systemctl status xray
不过,目前xray除了手动安装外,安装脚本会把你的xray放在 /usr/local/bin/xray
下,所以不必担心。
Xray报错 – 疑难杂症
目录权限不够
我们的xray日志目录会不够权限,从而报错:
我们这样给一下权限就行:
之后重启xray systemctl restart xray
,目录会生成log文件,但是依旧会报错,因为log没有写入权限。
我们给一下 log文件 一下755权限:
Nginx 443端口占用问题
xray.service: Start request repeated too quickly.
报错xray.service: Start request repeated too quickly.:
上面没有特别有用的信息,所以我们用 journalctl -u xray
命令看一下怎么样了,可以看到一条:
明显是443端口占用问题。明显是Nginx刚刚配置文件顶号了,Nginx配置文件顶号了,自行修改Xray配置文件,或者Nginx配置。因为服务器配置好,不是只是节点服务器,服务器这里有一个Web实例正在运行,所以不好改Nginx配置文件,我只好更改Xray配置文件。
在配置文件39行处,反正就是全文,有且只有一个443,就在39行(我的是)。 所以我需要更改这个443,防止其和Nginx冲突,但是只是因为我艺高人胆大(目移),如果害怕服务器被封锁,我还是建议更改Nginx配置文件吧(嗯)。
改完后重启xray,之后把下面客户端配置内的端口换成你改完的端口就行。比如说我把Xray配置文件的443改成了9901,那我就把客户端输入的443换成了9901。没啥问题,正常可用。
记得重新启动xray
正常运行(成功启动 Xray)
下面是正常运行的状态:
客户端连接配置
如果上面更改了443端口(Nginx顶号了),这里的443按照你Xray配置更改的端口,写上去就好。
(Windows、安卓)V2rayN配置:
(Mac,iOS)Shadowrocket配置:
节点测试
我测试过,即便是晚高峰期间,4k视频的缓冲依旧有10s左右,每一次点击,缓冲只需要1.2s左右即可完成。不过,具体还是要看你的服务器的。在服务器稳定运行半年后,才有了这个教程。直至目前,依旧没有发现服务器被任何封锁。
参考了
(Project X 小小白话文) – https://xtls.github.io/document/level-0/
(Project X 回落功能) – https://xtls.github.io/document/level-1/fallbacks-lv1.html
(阿良的幻想乡) – https://aliang-zh.top/2023/11/vless-vision-utls-reality/
发表回复