共计 3303 个字符,预计需要花费 9 分钟才能阅读完成。
开始
搭建 Snell
搭建 Shadow-Tls v3
搭建一般分为 docker 和在系统里面,我个人比较喜欢的是在系统里面搭建,这里先附上系统搭建的步骤,后面附上 docker 的
系统搭建
一般先去 Shadow-Tls 的发布页面 查看一下最新发行版的版本号和下载地址,这里以 ARM 机器为例进行过程展示
SSH 登录
获取权限
sudo -i
进行系统更新和升级
apt update && apt upgrade -y
下载 Shadow-Tls
wget https://github.com/ihciah/shadow-tls/releases/download/v0.2.20/shadow-tls-aarch64-unknown-linux-musl -O /usr/local/bin/shadow-tls
给权限
chmod +x /usr/local/bin/shadow-tls
写服务单元
vim /etc/systemd/system/shadow-tls.service
然后将以下内容复制粘贴进去并保存退出即可:
[Unit]
Description=Shadow-TLS Server Service
Documentation=man:sstls-server
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
ExecStart=shadow-tls --v3 server --listen ::0:8443 --server 127.0.0.1:40712 --tls gateway.icloud.com --password JsJeWtjiUyJ5yeto
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=shadow-tls
[Install]
WantedBy=multi-user.target
参数说明:
# –listen 0.0.0.0:8443 / / 这个是你后面在 surge 里面输入的端口号
# –server 127.0.0.1:40172 //SS 或 Snell 的监听端口,SS 那边可以监听改为 127.0.0.1
# –password JsJeWtjiUyJ5yeto // shadow-tls 的密码
# –tls gateway.icloud.com //tls 伪装网址
vim 操作:
按 i 底下出现 INSERT 提示即可进行编辑
编辑完成后按“ESC”键后,再输入“:wq”即可保存退出
如果想不保存退出,输入“:q!”
将服务单元添加到自启动项
systemctl enable shadow-tls.service
重载系统配置文件
systemctl daemon-reload
启动服务
systemctl start shadow-tls.service
可以通过以下查看服务状态看是否运行正常
并根据错误提示代码进行排障
查看服务状态
systemctl status shadow-tls.service
重启服务
systemctl restart shadow-tls.service
最后在 surge 的代理服务器中,Snell 协议配置 UI 上根据上面填写的服务单元信息,修改 Snell 端口为:8443,并在底下填写上相应的 Shdow-Tls 参数和版本号等信息
如果熟悉的话可以在文本编辑模式下,在原 Snell 协议后面贴上下面这段,并将 Snell 端口改为:8443
,shadow-tls-password=JsJeWtjiUyJ5yeto, shadow-tls-sni=gateway.icloud.com, shadow-tls-version=3
最终 Surge 的文本配置文件格式应该是:
Snell+TLS = snell, x.x.x.x(vps 的 ip), 8443, psk=xxxxxxxx, version=4, shadow-tls-password=JsJeWtjiUyJ5yeto, shadow-tls-sni=gateway.icloud.com, shadow-tls-version=3
Docker 搭建 shadow-Tls
首先用 cd 命令,进入 snell 的 docker-compose.yml
所在文件夹
例:
cd /root/snelldocker
接下来教程都将以这个路径作为例子,请将
snelldocker
换成自己的文件夹名
改 docker-compose.yml 第一种方法
可以用带 sftp 的 ssh 工具直接将下面的这一段复制到 docker-compose.yml
里去
⚠️注意:里面的一些内容要自己改动
shadow-tls:
image: ghcr.io/ihciah/shadow-tls:latest
container_name: shadow-tls
restart: always
network_mode: "host"
environment:
- MODE=server
- V3=1
- LISTEN=0.0.0.0:8443 # ipv6 的话改成[::]:8443,8443 不用改动
- SERVER=127.0.0.1:xxx # ipv6 的话改成[::1]:xxx,xxx 是你 snell 节点的端口
- TLS=mp.weixin.qq.com:443 # 这里可以自己选,下面放了作者推荐的链接
- PASSWORD=Gm8UXm6aridZ # 这里是密码,随便改
要改 TLS 的话,作者推荐V3 Protocol · ihciah/shadow-tls Wiki · GitHub
改 docker-compose.yml 第二种方法
如果没有 sftp 的话,那也可以使用 vim 工具(⚠️注意,要用英文输入法)
输入以下命令
vim /root/snelldocker/docker-compose.yml
如图
按 i
进入编辑模式,将 光标 移动到上图中的地方,然后复制下面的代码到里面去
shadow-tls:
image: ghcr.io/ihciah/shadow-tls:latest
container_name: shadow-tls
restart: always
network_mode: "host"
environment:
- MODE=server
- V3=1
- LISTEN=0.0.0.0:8443 # ipv6 的话改成[::]:8443,8443 不用改动
- SERVER=127.0.0.1:xxx # ipv6 的话改成[::1]:xxx,xxx 是你 snell 节点的端口,图中我以 28272 做例子
- TLS=mp.weixin.qq.com:443
- PASSWORD=Gm8UXm6aridZ # 这里是密码,随便改
如图
红线提示 注意对齐!!
然后按 esc
退出编辑模式,再按 :
加上 wq
保存退出即可
启动 shadow-tls
输入以下命令即可
cd /root/snelldocker
&& docker compose pull && docker compose up -d
查看日志输入
docker logs -f shadow-tls
在 surge 上应用
在确定服务端搭建完成之后,就可以将以下配置,复制到对应的 snell 节点上了
, shadow-tls-password=Gm8UXm6aridZ, shadow-tls-sni=mp.weixin.qq.com:443, shadow-tls-version=3
图中对应上面的配置
然后再把 原本的 snell 节点的端口改成8443
!
最终节点的配置应该是这样
Snell+TLS = snell, x.x.x.x(vps 的 ip), 8443, psk=GLk1ff4wuQNCDSqr97WwsHwe8KBjy3S, version=4, shadow-tls-password=Gm8UXm6aridZ, shadow-tls-sni=mp.weixin.qq.com:443, shadow-tls-version=3
至此全部完成!!
备注:本文 docker 部分来自:https://blog.lalalayyds.top/surge-shadow-tls-v3/
更多资源请 点击这里 关注 TG 频道