1. 准备服务器
- 购买一台带公网 IPv4 的 Debian 12/13 或 Ubuntu 22.04/24.04 云服务器。
- 记下服务器公网 IP、root 密码,或准备好 SSH 私钥。
- 在云厂商的安全组中放行 TCP 22、TCP 443、TCP/UDP 8388。
- 如果 SSH 不是 22 端口,请放行你实际使用的 SSH 端口。
不要把密码发给别人。在自己的终端里输入密码;输入时屏幕不显示字符是正常现象。
2. SSH 登录服务器
Mac 打开“终端”,Windows 打开 PowerShell,把下面的 IP 换成你的服务器公网 IP:
ssh root@你的服务器IP
第一次连接输入 yes,然后输入 root 密码并回车。看到类似 root@server:~# 就是登录成功。
示例:
ssh root@203.0.113.10。示例 IP 不能直接使用。3. 下载并运行一键脚本
登录服务器后,依次复制下面两行。先下载到服务器,再运行;不使用不可审阅的 curl | bash 方式。
curl -fsSL https://cnc980.github.io/downloads/spellvpn-quick-server.sh -o spellvpn-quick-server.sh bash spellvpn-quick-server.sh
想先查看脚本内容,可以在第二行之前运行:
less spellvpn-quick-server.sh
脚本会自动检查系统和端口、从 Xray 官方 GitHub 下载最新版并校验 SHA-256、生成独立随机凭据、配置 systemd 自启动;如果 UFW 已启用,会增加所需规则,但不会自动开启防火墙。
云安全组仍需手动放行。即使服务器内的防火墙已开放,云厂商控制台没有放行 TCP 443 和 TCP/UDP 8388,手机仍然无法连接。
4. 导入 SpellVPN
安装成功后,终端会显示两条以 vless:// 和 ss:// 开头的完整链接。
- 完整复制其中一条链接,不要遗漏开头或结尾。
- 打开 SpellVPN,点“添加”或“+”。
- 选择“从剪贴板”或“代理链接”导入。
- 选择新节点并连接;再导入另一条链接分别测试。
以后忘记链接,可重新 SSH 登录服务器并运行:
cat /root/spellvpn-links.txt
连接不上时检查
systemctl status xray --no-pager journalctl -u xray --no-pager -n 50 ss -lntup | grep -E ':443|:8388'
- 确认 SpellVPN 中的服务器地址就是云服务器公网 IP。
- 确认云安全组放行 TCP 443、TCP 8388 和 UDP 8388。
- 先在 Wi-Fi 和蜂窝网络之间切换,排除当前网络限制。
- 凭据保存在仅 root 可读的文件中,不要公开分享或提交到代码仓库。
这个脚本搭建了什么?
VLESS Reality · TCP 443无需域名和证书,使用独立 UUID、Reality 密钥和 Short ID。
Shadowsocks · TCP/UDP 8388使用 AES-256-GCM 和独立随机密码,适合做基础兼容性测试。
Xray + systemd服务开机自启,异常时自动重启,配置位于
/etc/xray/config.json。需要 Hysteria2、TUIC、AnyTLS、Trojan、VMess、订阅 URL 或与现有服务共存时,请使用进阶多协议教程,不要反复运行本脚本覆盖配置。