利用 Caddy 部署使用 Websocket 的 V2Ray Vmess 服务端,并搭建一个文件服务器
灵感源自 https://blog.kallydev.com/docs/technical-notes/server/deploy-v2ray-with-docker/,有修改。
部署说明
- 服务器为腾讯云轻量应用服务器(海外地区);
- 服务器操作系统为 Ubuntu 20.04 LTS;
- 在海外服务商购买的域名(例如 GoDaddy、Google Domain)。
部署步骤
准备工作
创建用户
1 | sudo useradd -s /bin/bash -m [用户名] |
配置新用户
1 | sudo visudo |
在文件末尾找到以下内容:
1 | #includedir /etc/sudoers.d |
修改为:
1 | #includedir /etc/sudoers.d |
登录到新用户
按 Ctrl + D 退出登录后重新登录至新用户。参考方法(Windows、Linux、MacOS终端均可,Android需要一个终端模拟器):
1 | ssh [用户名]@[服务器IP] |
删除默认用户
1 | sudo userdel -r ubuntu |
卸载监控组件(可选)[文档]
卸载 BaradAgent
登录云服务器后,执行以下命令,进入 BaradAgent
安装目录。
1 | cd /usr/local/qcloud/monitor/barad/admin |
执行以下命令,卸载 BaradAgent
。该命令不显示结果,如果不存在 /usr/local/qcloud/monitor/barad
文件夹,则说明卸载成功。
1 | ./uninstall.sh |
卸载 Sgagent
执行以下命令,进入 Sgagent
安装目录。
1 | cd /usr/local/qcloud/stargate/admin |
执行以下命令,卸载 Sgagent
。该命令不显示结果,您可以执行 crontab -l |grep stargate
命令查看是否有计划任务,若无计划任务,则说明卸载成功。
1 | ./uninstall.sh |
更新并升级所有软件包
1 | sudo apt update |
由于软件包比较多,需等待一段时间,并关注屏幕上的选项。
开始部署
安装
安装 Caddy
[文档]
1 | sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https |
安装 V2Ray
[文档]
1 | sudo bash <(curl -L https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh) |
配置
配置 V2Ray
1 | sudo nano /usr/local/etc/v2ray/config.json |
替换为以下内容 [文档]:
1 | { |
按 Ctrl + X 退出,按 Y 保存,按 Enter 确认。
配置 Caddy
1 | sudo nano /etc/caddy/Caddyfile |
替换为以下内容:
1 | [域名] { |
绑定域名
更换域名服务器(可选)
添加 DNS 解析记录
为域名添加一条指向服务器 IP 地址的 A 记录。
启动服务
至此,代理已经配置完毕,现在重载 Caddy
并启动 V2Ray
。
1 | sudo systemctl start v2ray |
客户端配置
下载客户端
我使用的客户端为 Clash
。
编辑配置文件
Clash 的配置文件格式为 yaml ,有严格的缩进规则。
以下为范例:
1 | port: 7890 |
推荐添加一些代理规则,如:https://github.com/Loyalsoldier/clash-rules。
导入配置文件
增强体验的额外配置
腾讯云的轻量应用服务器用作代理绰绰有余,所以我们还可以部署一些额外的东西。
修改 Caddy
配置文件
在 Caddyfile 开头加入以下内容:
1 | *.[域名] { |
再在你想要的任意域名下加入file_server
。
file_server
中加入(可选项):
root [自定义根目录]
browse #启用索引
修改后,我的 Caddyfile
是这样的:
1 | *.[域名] { |
其中的 [密码] 需要这样生成:
1 | caddy hash-password |
于是我把 Clash 配置文件放到 [root2] 中并在客户端配置从 Url 导入,从 proxy.[域名] 访问;把要分享的文件放在 [root1] ,其中有两个目录:Public 和 Private ,密码限制 Private 目录。
安装、配置 VsFTPd
部署完成
至此,你的代理服务器、文件服务器都已搭建完毕,享受吧!
利用 Caddy 部署使用 Websocket 的 V2Ray Vmess 服务端,并搭建一个文件服务器