打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

在搬瓦工机器上使用 Docker 部署 Surge Snell 协议

来自md5.pw
IWwwwww留言 | 贡献2026年4月15日 (三) 23:51的版本 (创建页面,内容为“== Snell 协议说明 == Snell 是 [https://nssurge.com Surge]团队开发的私有协议,相对来说,因为用户体量较小(仅 Surge 用户可用),所以拥有'''更强的私密性和抗封锁性'''。<blockquote>'''对我而言,我会同时部署 HY2 和 Snell,当 HY2 因为长时间流量过大等原因被临时禁用时,Snell 则成为备用协议可正常使用。''' 关于 HY2 的 Docker 部署模式请查看:在搬瓦工机器上…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

Snell 协议说明

Snell 是 Surge团队开发的私有协议,相对来说,因为用户体量较小(仅 Surge 用户可用),所以拥有更强的私密性和抗封锁性

对我而言,我会同时部署 HY2 和 Snell,当 HY2 因为长时间流量过大等原因被临时禁用时,Snell 则成为备用协议可正常使用。 关于 HY2 的 Docker 部署模式请查看:在搬瓦工机器上使用 Docker 快速部署 Hysteria2 (HY2) 以及 cloudflare-warp (cf-warp)

另外,由于是私有协议,所以建议使用 Surge 官方客户端进行使用。(有其他第三方工具使用破解的协议,但是支持的版本仅 v2, v3,Snell 最新版本为 v5)

有关 Snell 的更多说明请查看:官方文档

Docker Compose 配置

如果你的服务器使用了 iptables 之类的防火墙,需要你手动开启 6333 的 tcp 和 udp 端口, 以及 6334 的 tcp 端口

创建 docker-compose.yaml:

services:
  snell:
    image: lovechen/snell:latest
    container_name: snell
    ports:
      - "6333:6333/tcp"
      - "6333:6333/udp"
      - "6334:6334"
    volumes:
      - ./config:/app/config
    environment:
      - TZ=Asia/Singapore
    restart: always

进入根目录使用:docker compose up -d 即可启动 snell 协议

查看访问密钥和配置信息:

启动完成后,使用 docker compose logs snell 查看配置,你会看到以下输出:

<IPv4> 即为你的服务器 ipv4 地址

<密钥> 则为该协议使用的密码

可以看到有两个配置,直连和 Snell + ShadowTLS,由于 Snell v5 向下兼容 v4,所以如果你的 surge 没有购买最新的订阅(不支持 v5, 但支持 v4),可以使用直连配置

 ███████╗███╗   ██╗███████╗██╗     ██╗             ██╗        ███████╗██╗  ██╗ █████╗ ██████╗  ██████╗ ██╗    ██╗████████╗██╗     ███████╗
 ██╔════╝████╗  ██║██╔════╝██║     ██║             ██║        ██╔════╝██║  ██║██╔══██╗██╔══██╗██╔═══██╗██║    ██║╚══██╔══╝██║     ██╔════╝
 ███████╗██╔██╗ ██║█████╗  ██║     ██║        ████████████╗   ███████╗███████║███████║██║  ██║██║   ██║██║ █╗ ██║   ██║   ██║     ███████╗
 ╚════██║██║╚██╗██║██╔══╝  ██║     ██║        ╚════██╔════╝   ╚════██║██╔══██║██╔══██║██║  ██║██║   ██║██║███╗██║   ██║   ██║     ╚════██║
 ███████║██║ ╚████║███████╗███████╗███████╗        ██║        ███████║██║  ██║██║  ██║██████╔╝╚██████╔╝╚███╔███╔╝   ██║   ███████╗███████║
 ╚══════╝╚═╝  ╚═══╝╚══════╝╚══════╝╚══════╝        ╚═╝        ╚══════╝╚═╝  ╚═╝╚═╝  ╚═╝╚═════╝  ╚═════╝  ╚══╝╚══╝    ╚═╝   ╚══════╝╚══════╝
                                                                                                                                Created by LOVE
==========================================================================================================================================
Snell + ShadowTLS Service
Program Version: 25.12.19
Snell Server Version: 5.0.1
Snell Protocol Version: 5
ShadowTLS Version: 0.2.25
ShadowTLS Protocol Version: 3
2026/04/01 19:07:03 使用已存在的Snell配置文件

=== Snell + ShadowTLS 配置信息 ===
2026/04/01 19:07:03 正在启动 Snell 服务器...
2026/04/01 19:07:03 正在启动 ShadowTLS 服务器...

1. Snell直连配置:
Proxy = snell, <IPv4>, 6333, psk = <密钥>, version = 5, reuse=true, tfo=true

2. Snell + ShadowTLS配置:
Proxy = snell, <IPv4>, 6334, psk = <密钥>, version = 5, reuse=true, tfo=true, shadow-tls-password = <TLS_PASS>, shadow-tls-sni = www.apple.com, shadow-tls-version = 3

服务已启动!
Snell端口: 6333
ShadowTLS端口: 6334
2026/04/01 19:07:03 服务已启动 Ctrl+C 退出
2026-04-01T11:07:03.922305Z  INFO shadow_tls: Start 32-thread Server with:
Listen address: 0.0.0.0:6334
Target address: 127.0.0.1:6333
TLS server address: (wildcard-sni:off)fallback->www.apple.com:443
TCP_NODELAY: true
TCP_FASTOPEN:true
V3 Protocol: enabled(lossy)
2026-04-01 11:07:03.934855 [server_main] <NOTIFY> snell-server v5.0.1 (Nov 19 2025 09:57:07)
2026-04-01 11:07:03.934893 [server_main] <ERR> Unknown obfs type: none
2026-04-01 11:07:03.935028 [server_main] <NOTIFY> Effective IPv4 DNS: 127.0.0.11
2026-04-01 11:07:03.935048 [server_main] <NOTIFY> Start snell server on 0.0.0.0:6333
2026-04-01 11:07:03.935074 [server_main] <NOTIFY> TCP Fast Open enabled
2026-04-01 11:07:03.935083 [server_main] <NOTIFY> Start snell quic proxy server. Please confirm that both TCP and UDP inbound to port 6333 has been enabled.

Surge 配置示例

按照上方的配置信息填写 Server (IPv4 地址),Port 6333(如果使用的是 Snell + ShadowTLS 则为 6334),PSK 即为密钥。

Protocol Version 协议版本:v4 (如果你不支持 v5,则选择 v4 即可)。

Connection Reuse 连接复用,建议勾选。

TCP Fast Open 快速启用,建议勾选。

如果你使用的是 Snell + ShadowTLS 配置,在下方 ShadowTLS Version 中选择对应版本填入配置即可。

Surge Snell 配置1
Surge Snell 配置2

Docker Compose 合并 HY2

如果你想将 snell 协议和 hy2 协议合并,参考如下配置:

具体的 hy2 配置请查看:在搬瓦工机器上使用 Docker 快速部署 Hysteria2 (HY2) 以及 cloudflare-warp (cf-warp)

配置完成后使用 docker compose up -d 即可同时启用 snell 和 hy2 协议。(查看 snell 配置依然是 docker compose logs snell)。

services:
  snell:
    image: lovechen/snell:latest
    container_name: snell
    ports:
      - "6333:6333/tcp"
      - "6333:6333/udp"
      - "6334:6334"
    volumes:
      - ./config:/app/config
    environment:
      - TZ=Asia/Singapore
    restart: always
    
  hysteria:
    image: tobyxdd/hysteria:v2.7.1
    container_name: hysteria
    restart: unless-stopped
    network_mode: "host"
    volumes:
      - acme:/acme
      - ./hysteria.yaml:/etc/hysteria.yaml
      - ./ssl:/root/ssl
    logging:
      driver: "json-file"
      options:
        max-size: "1m"
        max-file: "3"
    command: ["server", "-c", "/etc/hysteria.yaml"]