|
|
|
|
# Socks
|
|
|
|
|
|
|
|
|
|
Стандартная реализация протокола Socks, совместимая с [Socks 4](http://ftp.icm.edu.pl/packages/socks/socks4/SOCKS4.protocol), [Socks 4a](https://ftp.icm.edu.pl/packages/socks/socks4/SOCKS4A.protocol) и Socks 5.
|
|
|
|
|
|
|
|
|
|
::: danger
|
|
|
|
|
**Протокол Socks не обеспечивает шифрование передачи данных, поэтому он не подходит для передачи данных через общедоступные сети.**
|
|
|
|
|
:::
|
|
|
|
|
|
|
|
|
|
Использование входящих соединений `SOCKS` более целесообразно в локальной сети или локальной среде, где он может быть использован для прослушивания входящих подключений и предоставления локальных сервисов другим программам.
|
|
|
|
|
|
|
|
|
|
## InboundConfigurationObject
|
|
|
|
|
|
|
|
|
|
```json
|
|
|
|
|
{
|
|
|
|
|
"auth": "noauth",
|
|
|
|
|
"accounts": [
|
|
|
|
|
{
|
|
|
|
|
"user": "my-username",
|
|
|
|
|
"pass": "my-password"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"udp": false,
|
|
|
|
|
"ip": "127.0.0.1",
|
|
|
|
|
"userLevel": 0
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
> `auth`: "noauth" | "password"
|
|
|
|
|
|
|
|
|
|
Метод аутентификации протокола Socks, поддерживаются режимы `"noauth"` (анонимный) и `"password"` (с использованием пароля пользователя).
|
|
|
|
|
|
|
|
|
|
Значение по умолчанию: `"noauth"`.
|
|
|
|
|
|
|
|
|
|
> `accounts`: \[ [AccountObject](#accountobject) \]
|
|
|
|
|
|
|
|
|
|
Массив, каждый элемент которого представляет собой учетную запись пользователя.
|
|
|
|
|
|
|
|
|
|
Этот параметр действителен только если `auth` установлен в значение `password`.
|
|
|
|
|
|
|
|
|
|
Значение по умолчанию: пустой массив.
|
|
|
|
|
|
|
|
|
|
> `udp`: true | false
|
|
|
|
|
|
|
|
|
|
Включает или отключает поддержку протокола UDP.
|
|
|
|
|
|
|
|
|
|
Значение по умолчанию: `false`.
|
|
|
|
|
|
|
|
|
|
> `ip`: address
|
|
|
|
|
|
|
|
|
|
Если UDP включен, Xray должен знать IP-адрес локального хоста.
|
|
|
|
|
|
|
|
|
|
Значение по умолчанию: `"127.0.0.1"`.
|
|
|
|
|
|
|
|
|
|
> `userLevel`: number
|
|
|
|
|
|
|
|
|
|
Уровень пользователя, для соединения будет использоваться [локальная политика](../policy.md#levelpolicyobject), соответствующая этому уровню пользователя.
|
|
|
|
|
|
|
|
|
|
Значение userLevel соответствует значению `level` в разделе [policy](../policy.md#policyobject). Если не указано, используется значение по умолчанию - 0.
|
|
|
|
|
|
|
|
|
|
### AccountObject
|
|
|
|
|
|
|
|
|
|
```json
|
|
|
|
|
{
|
|
|
|
|
"user": "my-username",
|
|
|
|
|
"pass": "my-password"
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
> `user`: string
|
|
|
|
|
|
|
|
|
|
Имя пользователя, тип данных: строка. Обязательный параметр.
|
|
|
|
|
|
|
|
|
|
> `pass`: string
|
|
|
|
|
|
|
|
|
|
Пароль, тип данных: строка. Обязательный параметр.
|
|
|
|
|
|
|
|
|
|
|