97 lines
1.5 KiB
Markdown
97 lines
1.5 KiB
Markdown
---
|
|
icon: material/new-box
|
|
---
|
|
|
|
!!! question "Since sing-box 1.14.0"
|
|
|
|
### Structure
|
|
|
|
```json
|
|
{
|
|
"type": "snell",
|
|
"tag": "snell-in",
|
|
|
|
... // Listen Fields
|
|
|
|
"version": 5,
|
|
"psk": "password",
|
|
"users": [
|
|
{
|
|
"name": "sekai",
|
|
"userkey": "user-password"
|
|
}
|
|
],
|
|
"obfs_mode": ""
|
|
}
|
|
```
|
|
|
|
### Version 6 Structure
|
|
|
|
```json
|
|
{
|
|
"type": "snell",
|
|
"tag": "snell-in",
|
|
|
|
... // Listen Fields
|
|
|
|
"version": 6,
|
|
"psk": "password",
|
|
"users": [
|
|
{
|
|
"name": "sekai",
|
|
"userkey": "user-password"
|
|
}
|
|
],
|
|
"mode": ""
|
|
}
|
|
```
|
|
|
|
### Listen Fields
|
|
|
|
See [Listen Fields](/configuration/shared/listen/) for details.
|
|
|
|
### Fields
|
|
|
|
#### version
|
|
|
|
==Required==
|
|
|
|
The Snell protocol version, one of `5` `6`.
|
|
|
|
Version `5` supports HTTP obfuscation (`obfs_mode`); version `6` replaces it
|
|
with traffic shaping (`mode`) and requires a `psk` of 12 to 255 bytes.
|
|
|
|
!!! note
|
|
|
|
Since we intentionally do not support the QUIC proxy mode of Snell v5, the v5 wire protocol
|
|
is effectively identical to v4, so no separate v4 server or v5 client is provided.
|
|
|
|
#### psk
|
|
|
|
==Required==
|
|
|
|
The pre-shared key.
|
|
|
|
#### users
|
|
|
|
Snell users.
|
|
|
|
When set, the server runs in multi-user mode: each entry has a `name` (optional, used in
|
|
logs) and a `userkey` (the user's key). The top-level `psk` remains the server key.
|
|
|
|
#### obfs_mode
|
|
|
|
==Version 5 only==
|
|
|
|
HTTP obfuscation mode, one of `none` `http`.
|
|
|
|
`none` is used by default.
|
|
|
|
#### mode
|
|
|
|
==Version 6 only==
|
|
|
|
Traffic shaping mode, one of `default` `unshaped` `unsafe-raw`.
|
|
|
|
`default` is used by default.
|